MyBatis居然也有并发问题

2023-08-09
阅读 12 分钟
572
bug,任何时候都要解决!不解决不行,你们想想,你早上刚到公司,打开电脑,写着需求听着歌,突然就被ding了……所以没有bug的日子才是好日子!

「NIO源码」JavaNIO源码 & JNI分析二:Java NIO源码分析

2022-09-23
阅读 20 分钟
1.8k
没看过的建议先看上一篇,本来打算讲讲linux内核,也看了一些书籍,可是c放了太久了,看代码实在头疼,就先放弃了,写写业务也没必要卷这么深吧。就讲到调用底层api为止我觉得刚刚好。不太擅长将源码结合讲故事,所以整片略显枯燥,将就看下吧~~

「NIO源码」JavaNIO源码 & JNI分析一:linux API介绍

2022-09-20
阅读 8 分钟
862
最近重温网络的时候,突然发现,底层就那么些接口,java肯定也是封装了底层接口,看过我前面Nio相关的小伙伴肯定知道对这些类有点影响(Buffer,Channel,Selector,SelectionKey),可是跟底层对应不起来啊,这一篇就透过源码看一下,大概能帮助你更好的了解这几个类,及底层的实现。偏重个人兴趣向整理,如有不适,欢迎吐槽

「Mybatis」动态SQL源码分析

2022-05-20
阅读 15 分钟
872
例如dubbo,所有标签解析,全部在一个方法中,然后各种ifelse解析,只有在最底层,只存在一种标签的情况下,才用for循环解析,代码如下(不想看可以跳过这一部分)

「Spring源码」循环依赖解析&遇到的bug分析

2022-05-06
阅读 10 分钟
2.3k
本来打算开开信心摸鱼看源码了,突然被问了一个bug,这好奇心就忍不住了,循环依赖照理来说Spring应该处理好了,怎么还会有问题呢?正好之前鸽了好久没写了,就借此机会分析下,先贴报错:

Java SPI,Dubbo SPI,Spring SPI 三种SPI分析

2022-03-19
阅读 4 分钟
1.1k
在文件中写实现类的全路径名。调用ServiceLoader.load的时候返回一个迭代器,他内部是一个懒加载,当调用hasNext的时候才会根据全路径名读取文件,调用next的时候才会实例化。本质上就是,获取接口全路径名,安规范去该路径下按行读取文件,然后用同一个类加载器加载类,返回。(源码很简单,就不多说了,使用方法看图)

「Dubbo源码」Spring启动加载Dubbo分析

2022-03-14
阅读 2 分钟
797
最近在研究dubbo源码,有一点之前没怎么细看,就是Spring怎么整合Dubbo的,还有就是Dubbo是怎么拓展Spring的。正好也好久没更新博客了,水一波博客。

「Spring-Aop」源码分析四:Aop源码解析

2022-02-10
阅读 12 分钟
1.1k
众所周知,Aop各种切面肯定是通过创建代理(Aop的各种基本概念各位听都应该听会了,这里就不多赘述了)。但是问题随之产生了,我们已经分析了普通bean的解析及创建,aop是在哪边创建代理对象的呢,怎么匹配切点的呢。这篇也是围绕这两个问题进行分析。动态代理的分析上一篇已经分析完了,感兴趣的可以看一下。传送门

「Spring-Aop」源码分析三:JDK动态代理&Cglib

2022-01-29
阅读 28 分钟
907
马上春节啦,没啥事情了,抽空整理了下Spring源码。前两天整理了Spring的Ioc,后面就开始Aop了。看能更到哪就更到哪吧,不定期更新~~~~反正也没人看

「Spring-IoC」源码分析二依赖注入&依赖循环

2022-01-28
阅读 21 分钟
892
书接上文我对IoC感兴趣的2个点分别是IoC是怎么获取bean信息,并管理bean的IoC引以为豪的依赖注入IoC是怎么解决循环依赖的(没错完全是因为网上说面试爱问)现在已经解决了第一个问题了,下面来分析下第二个问题--依赖注入依赖注入简单来说就是自己创建对象交给Spring容器管理。那肯定就有以下几个步骤了创建对象将对象所...

「Spring-IoC」源码分析一获取bean信息

2022-01-27
阅读 21 分钟
885
好久没更新了,年末最后一个季度确实会比较忙,也是抽空看完了Spring的源码,这里进行一下回顾总结,现在Spring的源码实在太多,有的分析的也很细致,这里就不打算分析的太细了。还是按照之前的节奏,按照我看源码的几个点进行分析。如果有什么问题,还希望多多指教。下面开始源码分析

Fastjson关于is开头序列化问题

2021-12-14
阅读 6 分钟
1.3k
修改get方法为getIsXXXpublic Boolean getHot() ->public Boolean getIsHot()

并发编程概念整理

2021-12-14
阅读 6 分钟
1k
为什么要并发编程 {代码...} 并发编程带来的问题安全性问题都知道并发编程能提高效率,但是这肯定有代价的,会带来很多问题主要分为3大类。原子性问题原子性:一个或多个操作在cpu执行过程中不可分割。不可分割也就是中间状态对外不可见,所以只要保证对外不可见即可。为什么会有这个问题?cpu会类似上图每隔一定时间铁...

万字整理MyBatis源码

2021-12-14
阅读 42 分钟
1.5k
MyBatis差不多在我刚学编程就一直在用,一直没有去看它源码,这次,正好研究到了,把源码看了一遍,还是有不小的收获的,特意整理了下,如果有任何问题,欢迎指出

Netty源码看这篇就够了

2021-11-17
阅读 19 分钟
4.3k
后面打算开始撸其他框架源码,而Netty对Java NIO的一层封装,提供了一套简单易用的API,经常被其他框架拿来用,我先花了点时间研究了下。这里整理下对源码的解读,以及对几个关键对象的介绍。分析了之前两篇流水账式的源码分析的不足,这次尝试聚焦几个不同重点进行分析。