自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Thxxxxxx

一枚爱剪辑,爱网球,爱羽球,爱乒乓,爱滑雪,爱滑冰就是不爱学习的计算机渣渣记录日常所学

  • 博客(201)
  • 资源 (1)
  • 收藏
  • 关注

转载 面经大全

美团外卖配送部后台开发面经https://www.nowcoder.com/discuss/76987?type=2&order=3&pos=8&page=0春招总结,干货满满https://www.nowcoder.com/discuss/76941?type=2&order=3&pos=14&page=1去哪儿网面经(offer已...

2019-07-20 22:27:22 764

转载 git命令

mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径。 git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。 git add XX 把xx文件添加到暂存区去。 git commit –m “XX” 提交文件 –m 后面的是注释。...

2020-04-26 10:40:26 392

原创 git diff

1,当工作区有改动的时候,暂存区为空(没有进行git add),那么diff的对比是和上次的commit的记录进行对比的。2,当工作区有改动,暂存区有东西的时候,diff是和临时区进行比较的。...

2020-04-24 18:28:37 213

原创 git中的工作区,暂存区,版本库

git status红色:工作区与版本库git add . (工作区的内容添加到暂存区)黄色:暂存区和版本库

2020-04-24 18:00:18 317

原创 java双冒号

class Person{ int age; void Person(int age){ this.age=age; } public static int compareByAge(Person a, Person b) { return a.age.compareTo(b.age); }} }class AgeCom...

2020-04-17 17:44:27 443

原创 0904-跟谁学

记录一下有史以来最恶心的面试体验闲聊了几句算法题:打印叶子节点从到右 ,打印最最左叶子节点这一层数组和链表的区别,插入哪个更快为什么数组支持随机访问ArrayList底层是怎么扩容,为什么要用复制的方式服务器Session同步怎么实现ThreadLocal底层实现Synchronized标注在普通方法,静态方法,同步代码块 的区别 底层实现介绍一下索引为什么...

2019-09-04 16:38:53 238

转载 俩阶段提交

准备阶段事务协调者给每个参与者发送Prepare消息,每个参与者要么直接返回失败,要么在本地执行事务,但不提交。可以进一步将准备阶段分为以下三个步骤: 1)协调者节点向所有参与者节点询问是否可以执行提交操作,并开始等待各参与者节点的响应。 2)参与者节点执行询问发起为止的所有事务操作,并将Undo信息和Redo信息写入日志。 3)各参与者节点响应协调者节点发起的询...

2019-09-02 10:33:58 188

原创 你不知道LinkedList中的方法

linkedList.indexOf(3) // 返回此列表中首次出现的指定元素的索引linkedList.lastIndexOf(3) // 返回此列表中最后出现的指定元素的索引linkedList.removeFirstOccurrence(3) // 从此列表中移除第一次出现的指定元素(从头部到尾部遍历列表)linkedList.removeLastOccurren...

2019-09-01 10:29:23 240

原创 大话强软弱虚引用

强引用就是我们平时所见对象,只要对象还或者,垃圾回收器就不能对其进行回收,即使内存满了软引用也能豁免一些垃圾回收,但内存满了之后不管它活着不,要对其进行回收弱引用是豁免不了任何垃圾回收,只要回收就会将其回收虚引用,不能通过它来访问对象,幻象引用仅仅是提供了一种确保对象被fnalize以后,做某些事情的机制...

2019-08-30 21:52:43 186

原创 Dubbo负载均衡策略

RandomLoadBalance:随机负载均衡。随机的选择一个。是Dubbo的默认负载均衡策略。 RoundRobinLoadBalance:轮询负载均衡。轮询选择一个。 LeastActiveLoadBalance:最少活跃调用数,相同活跃数的随机。活跃数指调用前后计数差。使慢的 Provider 收到更少请求,因为越慢的 Provider 的调用前后计数差会越大。 Consistent...

2019-08-30 18:34:48 271

原创 extra字段

using index :使用覆盖索引的时候就会出现using where:在查找使用索引的情况下,需要回表去查询所需的数据using index condition:查找使用了索引,但是需要回表查询数据using index & using where:查找使用了索引,但是需要的数据都在索引列中能找到,所以不需要回表查询数据...

2019-08-29 09:50:28 288

原创 内部类笔记

外部类的非静态方法之外的任意位置创建某个内部类的对象,具体的指明这个对象的类型:OuterClassName.InnerClassName 内部类可以访问其外围类的方法和字段 内部类的对象只能在与其外围类的对象相关联的情况下才能被创建 必须使用外部类的对象来创建内部类对象 局部内部类:在方法的作用域内创建一个完整的类 匿名内部类:方法的返回值的生成与表示这个返回值的类的定义结合在一起 ...

2019-08-28 19:01:01 103

原创 为什么重写HashCode()和equal()

先揭晓答案:重写这俩个方法是为了在使用HashMap 传入自定义Key时,HashMap还能根据需求正常使用。现在有这样的需求:根据Key的属性返回value。不重写会怎样,来看代码class Key{ int i; Key(int i){ this.i=i; }}public class DefineKey { public static void main(Str...

2019-08-27 11:15:37 92

原创 注册Bean的方式

包扫描+组件标注注解(@Controller/@Service/@Repository/@Component)[自己写的类] @Bean[导入的第三方包里面的组件] @Import[快速给容器中导入一个组件] @Import(要导入到容器中的组件);容器中就会自动注册这个组件,id默认是全类名 ImportSelector:返回需要导入的组件的全类名数组; ImportB...

2019-08-26 20:01:31 180

原创 BeanFactory和FactoryBean的区别

BeanFactory:就是一个最基本存放Bean的容器FactoryBean:工厂Bean,它是一个接口,内部含有一个getObject方法返回对象注册到容器中,还含有getObjectType()返回对象类型,isSingleton()是否为单例使用方式:继承FactoryBean,实现接口中的方法,再将这个工厂Bean注入到容器中,就实现了getObject方法返回对象注入容器中。...

2019-08-26 19:59:09 164

转载 数据库设计范式

常用的范式有:第一范式,第二范式,第三范式,来说说 我对他们的理解第一范式:保证每一列数据的原子性例子:存在一个列名为学校的属性,但其保存了 例如为 (北京,清华大学)(上海,复旦大学),,此时不满足第一范式的要求,应拆分为学校地址与学校。第二范式:在第一范式的基础上,每个非主键列属性要完全依赖于主键属性。例子:直接在网上找的例子,实在想不出什么好例子。。。 第三...

2019-08-26 10:26:15 138

原创 五种进程通信方式

管道 它是半双工的(即数据只能在一个方向上流动),具有固定的读端和写端。 它只能用于具有亲缘关系的进程之间的通信(也是父子进程或者兄弟进程之间)。 它可以看成是一种特殊的文件,对于它的读写也可以使用普通的read、write 等函数。但是它不是普通的文件,并不属于其他任何文件系统,并且只存在于内存中。 命名管道 FIFO可以在无关的进程之间交换数据,与无名管道不...

2019-08-25 15:16:02 129

原创 Linux指令

文件文件查询: find [查找目录] [查找条件]文件拷贝:cp [选项] 源路径 目的路径打包解包:tar -zcvf 目标文件 源文件或文件夹 tar -zxvf 目标文件 源文件或文件夹文本查找: grep [选项] 模式串 文件文本排序:sort [选项] 文件进程进程查询:psF:进程标志,说明进...

2019-08-25 10:59:27 211

原创 0824-有赞

数据库ACID是啥 啊啊啊忘了Linux操作系统啊啊啊 我疯了 动力不足?那就来一场凉凉的面经

2019-08-24 11:06:04 188

转载 线程的六种状态

NEW(初始):线程被创建后尚未启动。 RUNNABLE(运行):包括了操作系统线程状态中的Running和Ready,也就是处于此状态的线程可能正在运行,也可能正在等待系统资源,如等待CPU为它分配时间片。 BLOCKED(阻塞):线程阻塞于锁。 WAITING(等待):线程需要等待其他线程做出一些特定动作(通知或中断)。 TIME_WAITING(超时等待):该状态不同于WAITING...

2019-08-24 08:52:02 181

原创 为什么将老年代移动到方法区

字符串存在永久代中,容易出现性能问题和内存溢出。 类及方法的信息等比较难确定其大小,因此对于永久代的大小指定比较困难,太小容易出现永久代溢出,太大则容易导致老年代溢出。 永久代会为 GC 带来不必要的复杂度,并且回收效率偏低。 元空间不再使用虚拟机内存而是使用本地内存,元空间大小只受本地内存限制...

2019-08-23 17:00:43 564

原创 触发Full GC的原因

当年轻代晋升到老年代的对象大小,并比目前老年代剩余的空间大小还要大时,会触发Full GC; 当老年代的空间使用率超过某阈值时,会触发Full GC; 当元空间不足时(JDK1.7永久代不足),也会触发Full GC; 当调用System.gc()也会安排一次Full GC。...

2019-08-22 10:28:06 726

翻译 GC算法以及垃圾回收器

2019-08-21 21:33:37 95

原创 0820-拼多多二面

开场自我介绍介绍项目项目中主要的一些表结构,表字段项目中的算法错误率,召回率项目中遇到的困难(我说读写不一致问题) 怎么解决?分库分表的依据垃圾回收机制Synchronize和Reentrantlock编程题1.输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 62.在二叉树中,找到俩个结点的公共结点,并且打印路径...

2019-08-20 20:17:58 306

原创 手写一个HashMap

interface Map<K,V>{ public V put(K k,V v); public V get(K k); public int size(); public interface Entry<K,V>{ public K getKey(); public V getValue(); }}public class MyHashMap&l...

2019-08-20 14:07:04 77

原创 LinkedBlockingQueue和ArrayBlockingQueue

ArrayBlockingQueue的初始化必须传入队列大小,LinkedBlockingQueue则可以不传入 ArrayBlockingQueue用一把锁控制并发,LinkedBlockingQueue俩把锁控制并发,锁的细粒度更细 ArrayBlockingQueue采用数组的方式存取,LinkedBlockingQueue用Node链表方式存取...

2019-08-19 21:21:51 115

原创 各个排序复杂度

最好时间复杂度 最坏时间复杂度 空间复杂度 稳定? 冒泡排序 o(n) o(n*n) 1 Yes 插入排序 o(n) o(n*n) 1 Yes 选择排序 o(n*n) o(n*n) 1 No 归并排序 o(n log(n)) o(n log(n)) o(n) ...

2019-08-19 14:45:34 135

原创 SSL/TLS

SSL 即安全套接层(Secure Sockets Layer), 它自身是一个非常好的安全通信协议TLS 由记录协议、握手协议、警告协议、变更密码规范协议、扩展协议等几个子协议组成,综合使用了对称加密、非对称加密、身份认证等许多密码学前沿技术。...

2019-08-17 11:09:05 137

原创 ConcurrentModificationException

在使用迭代器遍历时,ArrayList 内部创建了一个内部迭代器iterator,在使用next()方法来取下一个元素时,会使用ArrayList里保存的一个用来记录List修改次数的变量modCount,与iterator保存了一个expectedModCount来表示期望的修改次数进行比较,如果不相等则会抛出异常;而在在foreach循环中调用list中的remove()方法,会走到fas...

2019-08-14 19:45:24 63

原创 HTTP缓冲

2019-08-14 11:14:12 92

原创 0813-拼多多

自我介绍聊项目说下springboot吧怎么自动配置说下有哪些注解如何自定义注解说下 applicationcontext吧说下mybatis吧JAVA8 中的新特性 说下为啥调用接口方法insert() 能实现插入呢(动态代理 创建了代理对象)mybatis执行过程读过哪些源码(我说了集合) 说来听听说下CurrentHashMap说下v...

2019-08-13 20:45:13 127

原创 HTTP请求报文和响应报文中的实体数据

先看个整体轮廓。俩种报文的起始行的相关数据,我就不说了。来看一个响应报文其中,较为重要的有Host,Connection,Accept,Acccept-Encoding,Accept-LanguageHost 字段告诉服务器这个请求应该由哪个主机来处理,当一台计算机上托管了多个虚拟主机的时候,服务器端就需要用 Host字段来选择,有点像是一个简单的“路由重定向”。Conne...

2019-08-13 10:27:10 1457

原创 epoll和select的区别

A. epoll 和 select 都是 I/O 多路复用的技术,都可以实现同时监听多个 I/O 事件的状态B. epoll 相比 select 效率更高,主要是基于其操作系统支持的 I/O事件通知机制,而 select 是基于轮询机制C. epoll 支持水平触发和边沿触发两种模式...

2019-08-13 08:59:22 157

原创 大话synchronize底层原理

在每个对象中mark word中LockWord指向monitor的起始地址,也就是每个对象与一个monitor相关联。在monitor中有个Owner字段记录着拥有锁的线程。初始时为NULL表示当前没有任何线程拥有该锁,当线程成功拥有该锁后保存线程唯一标识,当锁被释放时又设置为NULL。修改过程都是以CAS的方式修改。synchronize 就有了偏向锁,偏向锁的适用场景为 没有发生锁竞争的情...

2019-08-09 15:49:56 603

原创 为什么消息队列不实现精准一次(exactly once)?

消息队列不实现exactly once,而是at least once + 幂等性,这个幂等性让给我们去处理。消息队列即使做到了Exactly once级别,consumer也还是要做幂等。因为在consumer从消息队列取消息这里,如果consumer消费成功,但是ack失败,consumer还是会取到重复的消息,所以消息队列花大力气做成Exactly once并不能解决业务侧消息重复的问题。...

2019-08-05 22:01:59 1206

原创 Redis底层数据结构实现

list: ziplist linkedlistmap: ziplist hashtableset : inset hashtablezset: ziplist skiplist

2019-08-03 14:44:17 104

原创 Collections工具类

void reverse(List list)//反转void shuffle(List list)//随机排序void sort(List list)//按自然排序的升序排序void sort(List list, Comparator c)//定制排序,由Comparator控制排序逻辑void swap(List list, int i , int j)//交换两个索引位置的元素...

2019-07-30 16:45:24 89

转载 一张图看懂Bean的实例化过程

实例化 bean 对象,类似于 new XXObject() 将配置文件中配置的属性填充到刚刚创建的 bean 对象中。 检查 bean 对象是否实现了 Aware 一类的接口,如果实现了则把相应的依赖设置到 bean 对象中。比如如果 bean 实现了 BeanFactoryAware 接口,Spring 容器在实例化bean的过程中,会将 BeanFactory 容器注入到 bean ...

2019-07-29 20:02:07 838

转载 四种请求方式

对于访问网页来讲,最常用的类型就是GET。顾名思义,GET 就是去服务器获取一些资源。对于访问网页来讲,要获取的资源往往是一个页面。其实也有很多其他的格式,比如说返回一个JSON 字符串,到底要返回什么,是由服务器端的实现决定的。 例如,在云计算中,如果我们的服务器端要提供一个基于 HTTP 协议的 API,获取所有云主机的列表, 这就会使用 GET 方法得到,返回的可能是一个 JSON 字符串。...

2019-07-25 21:33:24 2693

转载 三大主流消息中间件优缺点

rabbitmq:优点:轻量,迅捷,容易部署和使用,拥有灵活的路由配置缺点:性能和吞吐量较差,不易进行二次开发rocketmq:优点:性能好,稳定可靠,有活跃的中文社区,特点响应快缺点:兼容性较差,但随意影响力的扩大,该问题会有改善kafka:优点:拥有强大的性能及吞吐量,兼容性很好缺点:由于“攒一波再处理”导致延迟比较高,有可能消息重复消费...

2019-07-25 21:05:14 5465

K-均值聚类算法中的testSet.txt

机器学习实战这本书中的数据集文本。

2019-04-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除