spring
spring 源码
奋斗的菜鸡
好记性不如烂笔头
展开
-
spring源码(四)事务
spring事务相对于编程式的事务,基本用的都是声明式事务,这篇文章讲的也就是声明式事务是如何实现的。想要开启声明式事务,首先需要使用@EnableTransactionManagement注解,所以分析spring事务的源码就从分析这个注解开始。点开注解可以看到很熟悉的@Import导入,导入的类是TransactionManagementConfigurationSelector,这个从名字基本就可以看出是一个ImportSelector的导入类。TransactionManagementC原创 2020-07-22 12:23:42 · 120 阅读 · 0 评论 -
spring (三) AOP源码
spring aop是spring框架的一大核心,用过spring的人应该对于这个内容不会感到陌生。但是,肯定会有人对于spring aop和aspectJ以及proxy和CGLIB比较混乱。动态代理java里面最常用的一般就是jdk的proxy接口代理,以及CGLIB的继承代理,而spring aop是基于这两种代理的一种封装,具体哪种代理可以根据配置选择,而aspectJ是一个第三方的代理框架,本身和spring毫无关系,但是由于可能是spring自觉的aspectJ比较人性化,所以spring将a原创 2020-07-04 21:52:29 · 182 阅读 · 0 评论 -
spring 源码(二) 注解扫描的过程
在之前的博客中,分析bean扫描的时候,看到这个过程是在ConfigurationClassPostProcessor这个后置处理器中执行的,这里来仔细分析一下其中的过程。首先进入ConfigurationClassPostProcessor这个类,找到processConfigBeanDefinitions方法,在这个方法中,会创建一个ConfigurationClassParser类,调用paser方法,传入javaconfig的配置类,这个配置类在spring容器最开始的代码register方法中原创 2020-06-23 13:26:33 · 643 阅读 · 0 评论 -
Spring源码分析(一)IoC容器
Spring Framework,也就是我们常说的Spring框架,我觉得其中最核心的部分应该就是IOC容器了,Spring的IOC容器的实现也叫做DI,也就是依赖注入。这篇博客要说的就是这其中的大概的实现过程。原创 2020-06-01 13:11:55 · 413 阅读 · 0 评论