上一页 1 ··· 3 4 5 6 7
摘要: 只有在多线程并发的情况下才会出现这种情况,那就是在put操作的时候,如果size>initialCapacity*loadFactor,hash表进行扩容,那么这时候HashMap就会进行rehash操作,随之HashMap的结构就会很大的变化。很有可能就... 阅读全文
posted @ 2021-01-04 17:24 彼岸-花已开 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 数据库引擎不支持事务 以 MySQL 为例,其 MyISAM 引擎是不支持事务操作的,InnoDB 才是支持事务的引擎,一般要支持事务都会使用 InnoDB。 从 MySQL 5.5.5 开始的默认存储引擎是:InnoDB,之前默认的都是:MyISAM,所以这... 阅读全文
posted @ 2021-01-04 10:31 彼岸-花已开 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 问题 都知道Spring通过三级缓存来解决循环依赖的问题。但是是不是必须三级缓存才能解决,二级缓存不能解决吗? 要分析是不是可以去掉其中一级缓存,就先过一遍Spring是如何通过三级缓存来解决循环依赖的。 循环依赖 所谓的循环依赖,就是两个或则两个以上的bea... 阅读全文
posted @ 2020-12-31 17:37 彼岸-花已开 阅读(254) 评论(0) 推荐(0) 编辑
摘要: SpringBoot框架已经很流行了,笔者做项目也一直在用,使用久了,越来越觉得有必要理解SpringBoot框架中的一些原理了,目前的面试几乎都会用问到底层原理。我们在使用过程中基本上是搭建有一个框架拿来现用,在此过程中遇到问题就去百度来解决相... 阅读全文
posted @ 2020-12-31 14:50 彼岸-花已开 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 扩容原因: Java数组对象在定义的时候必须指定大小,且数组对象本身是不可扩容的。 public static void main(String[] args) { int []number = {1,2,3}; //定义数组 number[4]=1;} ... 阅读全文
posted @ 2020-12-31 10:15 彼岸-花已开 阅读(497) 评论(0) 推荐(0) 编辑
摘要: 什么是跳跃表 跳跃表是一种有序的数据结构,它通过在每个节点中维持多个指向其他的几点指针,从而达到快速访问队尾目的。跳跃表的效率可以和平衡树想媲美了,最关键是它的实现相对于平衡树来说,代码的实现上简单很多。 跳跃表用在哪 说真的,跳跃表在 Redis 中使用不是... 阅读全文
posted @ 2020-12-25 10:21 彼岸-花已开 阅读(121) 评论(0) 推荐(0) 编辑
摘要: TCP三次握手 如下图所示,可以看到建立一个TCP连接的过程为(三次握手的过程): 第一次握手 客户端向服务端发送连接请求报文段。该报文段中包含自身的数据通讯初始序号。请求发送后,客户端便进入 SYN-SENT 状态。 第二次握手 服务端收到连接请求报文段后... 阅读全文
posted @ 2020-12-24 14:10 彼岸-花已开 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 一、名词解释 根搜索算法是JVM用来的判断对象是否存活的算法,此算法基本思路为通过一系列的“GC Roots”对象作为起始点,从这些节点往下搜索,当一个对象和GC Roots不可达时,则该对象是无用的,可被回收的。如下图所示:object5、object6、o... 阅读全文
posted @ 2020-12-23 14:30 彼岸-花已开 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 在我的上一篇博客中,介绍了JVM堆内存的结构以及在堆中进行的GC机制,链接是浅谈JAVA GC机制与性能优化 那么,在JVM的新生代内存中,为什么除了Eden区,还要设置两个Survivor区? 1 为什么要有Survivor区 先不去想为什么有两个Survi... 阅读全文
posted @ 2020-12-23 14:08 彼岸-花已开 阅读(263) 评论(0) 推荐(0) 编辑
摘要: ​ GC流程是每一个Java开发人员都应该掌握的... 阅读全文
posted @ 2020-12-23 11:40 彼岸-花已开 阅读(104) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7