- 博客(128)
- 资源 (1)
- 收藏
- 关注
原创 Mysql多表连接查询的执行细节(一)
本篇博客会说明一下问题:1. 驱动表如何选择;2. 两表关联查询的内在逻辑是怎样的3. *多表连接如何执行?是先两表连接的结果集然后关联第三张表,还是一条记录贯穿全局
2019-02-26 20:54:39 35406 32
原创 Spring解析,加载及实例化Bean的顺序(零配置)
Spring零配置下@Bean,@Import,@ComponentScan形式定义Bean的解析,加载及实例化顺序
2018-02-16 14:23:31 61517 20
原创 Spring IOC原理源码解析(@Autowired原理详解 :标识属性与方法)(二 )
Spring解析标识了@Autowired的Field和Method,属性支持容器类型Array,Collection,Map;按类型注入有多个候选者时如何择取最优解。注入HttpRequest的实现;@Autowired标识方法的作用及执行时机
2017-11-06 10:09:50 18617 3
原创 深入源码分析 Elasticsearch Filter 机制
Filter的cache细节,比如为什么只有filter能cache,cache数据是什么,缓存的数据结构是什么,什么类型的query能被缓存等等
2020-11-09 16:42:32 871
原创 详解 Elasticsearch refresh 机制
refresh 的定义refresh 做了什么refresh的执行逻辑search idle 的含义
2020-11-04 11:07:50 9809 1
原创 详解 Elasticsearch Index Sorting 原理
Elasticsearch Index Sorting 原理,以及在Elasticsearch,Lucene层面的源码的简析
2020-10-07 10:06:25 4750
原创 多功能高度定制化的Mybatis逆向工程
集成很多额外功能的Mybatis逆向工程框架源码,额外功能包括生成Service,Controller,抽象Mapper接口等等
2020-09-19 15:16:37 291
原创 Elasticsearch(Lucene)文件组织结构以及检索数据流程简析
Elasticsearch(Lucene)数据在磁盘的目录结构,以及在检索是的简要流程
2020-09-19 14:33:24 888
原创 《深入计算机组成原理》对Java开发的启发
1. 浮点数的表示和运算2. CPU多级流水线,多条流水线,指令预读,乱序执行3. volatile关键字的原理,MESI协议4. 主内存,CPU缓存的读写时间5. CPU分支预测机制6. CPU Cache Line 机制,内存边界对齐,Java对象要求8字节的整数倍7. Java直接内存机制...
2020-05-18 22:58:28 912
原创 漫谈Java基本数据类型的自动装拆箱机制
Java的自动拆装箱机制的理解,原始类型和装箱类型使用上的区别,什么时候会装箱,什么时候回拆箱,有什么作用。
2020-03-28 23:11:57 333 1
原创 IntelliJ IDEA插件Easy Code 生成配置
Easy Code 是IDEA的一个插件,封装了Mybatis 逆向工程的功能,同时提供了一些自定义的拓展。使用者可对插件的脚本做自定义拓展,比如定义生成的Entity以DO结尾,使用Lombok风格,标识@Data注解,抽象公共的Mapper接口,自定义Service,Controller公共方法 等等。我就是对脚本做了一些自定义,实现上述功能。IDEA安装了Easy Code插件后,配置选项...
2020-03-16 19:36:42 1526
转载 Redis内存模型
前言Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分。我们使用Redis时,会接触Redis的5种对象类型(字符串、哈希、列表、集合、有序集合),丰富的类型是Redis相对于Memcached等的一大优势。在了解Redis的5种对象类型的用法和特点的基础上,进一步了解Redis的内存模型,对Redis的使用有很大...
2020-03-12 22:49:06 297
原创 Mybatis逆向工程自定义拓展
对Mybatis Generator做拓展,支持所有的Mappper接口统一抽象父接口,统一注释,可对生成的Model统一添加父类,使用Lombok的@Data替代Getter和Setter方法,可对所有的Model追加DO后缀,比如user_info表,生成UserInfoDO实体类,将Table的Column注释追加到Model的Field上,可自定义类型映射,比如TinyInt >> Integer, TinyInt (2) >> Boolean
2019-12-30 22:28:46 573
原创 Lucene倒排索引在内存中的构建过程(基于7.3.1)
本篇文章只讲倒排索引在内存中的构建过程,数据flush到磁盘的过程没有关联,一个Field的倒排索引在内存中公用一个字节数组,但flush到磁盘后,会根据数据类型写入不同的数据文件。本篇博客只讲构建,不讲刷盘。Lucene根据Field自定的 IndexOptions(索引构建选项)级别记忆是否支持Payload会存储不同的数据信息:public enum IndexOptions { ...
2019-06-03 21:23:55 1210
原创 Mysql多表连接查询的执行细节(二)
本篇博客会说明一下问题:1. 筛选条件放置在where和on上的不同;2. 外连接时外表是否一定为驱动表;3. 是否应该使用join连接查询
2019-02-28 09:47:10 2039 6
原创 SpringCloud整合Demo
基于spring-boot 2.0.4.RELEASE,spring-cloud Finchley.SR2 版本。演示SpringCloudConfig,Eureka,Feign,Rigbbon,Hystrix,Zuul,Seluth,Zipkin的整合方式,统一整合成一个大的应用。
2018-11-05 21:50:22 2922 1
原创 Spring作用域 (Scope:Request,Session,Thread,Refresh) 的代理机制源码解析
Spring非Singleton类型的scope的内部实现
2018-09-21 09:20:57 1441
转载 Java对象大小解析与实测
转载自: Java对象大小内幕浅析讲述了如何计算一个Java对象所占的内存大小,对象头+实例数据+对齐填充 ,new Object( ) 占多少字节等。测试的项目代码在: ...
2018-09-11 21:05:53 395
原创 SpringCloud失败重试源码解析
详解基于RestTemplate形式的失败重试机制,简述基于原生Ribbon和Feign的失败重试机制,他们的内在形式都是相同的
2018-07-19 14:09:09 1244 2
原创 SpringCloud解析@FeignClient标识接口的过程
讲解SpringCloud解析@FeignClient标识接口的过程,以作为实际使用Feign的参考
2018-07-16 20:32:41 15683
原创 SpingCloud整合Ribbon的源码总结
Ribbon的负载均衡机制的源码总结,讲解了以下问题:1.使用Spring的可命名内置容器(NamedContextFactory)实现服务间的配置隔离2.负载均衡配置信息的加载策略和可拓展的节点。
2018-07-10 17:26:59 3902 3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人