摘要: 一、基础 1.HashMap结构 数组+链表 1.8加入了红黑树,参考:HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你! 2.JVM原理 参考:JVM运行原理详解 JVM结构、GC工作机制详解 3.JVM调优 参考:JVM调优总结 二、框架 1.Spring的IOC 阅读全文
posted @ 2018-07-26 18:09 YelaSilent 阅读(1056) 评论(0) 推荐(0)
摘要: MyBatis提供了一级缓存和二级缓存的支持一级缓存是SqlSession级别的缓存,缓存的数据只在SqlSession内有效,是默认开启的。在SqlSession中有一个私有的HashMap([namespace:sql:参数]作为key)用于存储缓存数据。如果SqlSession执行了新增/修改 阅读全文
posted @ 2018-07-06 11:25 YelaSilent 阅读(125) 评论(0) 推荐(0)
摘要: Spring AOP中的动态代理主要有两种方式,JDK动态代理和CGLIB动态代理。一、JDK动态代理1.通过实现InvocationHandler接口来自定义自己的InvocationHandler;2.通过Proxy.getProxyClass0获得动态代理类(如果实现当前接口的代理类存在,直接 阅读全文
posted @ 2018-07-06 09:31 YelaSilent 阅读(103) 评论(0) 推荐(0)
摘要: 一、修饰方法 1.修饰普通方法 ① synchronized方法 VS 非synchronized方法 public void method() { System.out.println("run method"); try { Thread.sleep(2000); } catch (Interr 阅读全文
posted @ 2018-06-22 13:18 YelaSilent 阅读(416) 评论(0) 推荐(0)
摘要: 默认使用的是什么通信框架,还有别的选择吗? 默认也推荐使用netty框架,还有mina。 服务调用是阻塞的吗? 默认是阻塞的,可以异步调用,没有返回值的可以这么做。 一般使用什么注册中心?还有别的选择吗? 推荐使用zookeeper注册中心,还有redis等不推荐。 默认使用什么序列化框架,你知道的 阅读全文
posted @ 2018-05-30 05:23 YelaSilent 阅读(2868) 评论(0) 推荐(1)
摘要: 什么是redis? Redis 是一个基于内存的高性能key-value数据库。 Reids的特点? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Re 阅读全文
posted @ 2018-05-29 21:50 YelaSilent 阅读(226) 评论(0) 推荐(0)
摘要: 如何计算出一个二叉树的高度和深度 二叉树第i层上的结点数目最多为2i-1(i>=1) 深度为k的二叉树至多有2k-1个结点(k>=1) 包含n个结点的二叉树的高度至少为(log2n)+1 在任意一棵二叉树中,若终端结点的个数为n0,度为2的结点数为n2,则n0=n2+1 一致性哈希为什么叫一致性哈希 阅读全文
posted @ 2018-05-18 15:27 YelaSilent 阅读(224) 评论(0) 推荐(0)
摘要: 一、下载 Elasticsearch https://www.elastic.co/downloads/elasticsearch 二、修改Gradle 三、EsConfig 四、调用 1.创建index 2.添加数据 3.删除数据 4.批量插入数据 5.批量删除数据 6.未完待续 阅读全文
posted @ 2018-04-18 17:04 YelaSilent 阅读(4519) 评论(0) 推荐(0)
摘要: MySQL InnoDB一共有四种锁:共享锁(读锁,S锁)、排他锁(写锁,X锁)、意向共享锁(IS锁)和意向排他锁(IX锁)。其中共享锁与排他锁属于行级锁,另外两个意向锁属于表级锁。 共享锁(S):允许一个事务去读一行,阻止其他事务获得相同的数据集的排他锁。就是我读的时候,你可以读,但是不能写。 排 阅读全文
posted @ 2018-04-12 16:20 YelaSilent 阅读(303) 评论(0) 推荐(0)
摘要: 一、四种隔离级别 Read Uncommitted(读取未提交内容) 在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读(Dirty Read)。Read Committed(读取提交内容)--Sq 阅读全文
posted @ 2018-04-11 11:08 YelaSilent 阅读(135) 评论(0) 推荐(0)