Spring源码阅读笔记
文章平均质量分 83
阅读spring源码的记录
飞翔的小羊
我宁愿瞄准星星却击不中他,也不愿没有目标。
我宁愿去追逐梦想却得不到它,也不愿不曾追逐。
我宁愿去尝试失败,不愿不曾尝试。
我不想活着的每一天,都在幻想如果我当初付出了更多努力会是怎样,我会去放手追逐,无论刀山、火海,我会去追逐我的命运,我不能朝着梦想行走,而是向它狂奔!
失败也是一种结晶、成果,也是一种成功
展开
-
Spring事务原理
一、事务相关的组件 1.BeanFactoryTransactionAttributeSourceAdvisor 事务切面 ,AOP用来判断方法是否需要拦截,生成代理对象 2.AnnotationAwareAspectJAutoProxyCreator AOP的后置处理器,postProcessAfterInitialization方法中会利用BeanFactoryTransactionAttributeSourceAdvisor事务切面判断每个Bean的类上或方法是否标注@Transacti...原创 2021-05-19 21:50:45 · 182 阅读 · 0 评论 -
SpringBoot自动配置原理&内嵌tomcat启动及DispatchServlet加载时机
一.概述 SpringBoot简单来说就是是对spring,springmvc的一个高级封装,根据spring自己的spi机制加载spring.factories文件里的各种配置类。 一个仅依赖web环境的spirngboot项目,Springboot的启用原理可以概述为以下四步: 1、SpringApplication.run 会创建一个IOC容器: AnnotationConfigServletWebServerApplicationContext, @Spring...原创 2021-05-18 22:09:46 · 952 阅读 · 0 评论 -
Spring监听器原理
1.首先介绍下如何使用Spring的监听器 1.1 声明监听器,只要在方法上加上@EventListener注解就可以了,注解和方法参数就是事件类型@Componentpublic class AppEventListener { public AppEventListener(){ System.out.println("AppEventListener..."); } @EventListener(MessageEvent.class) //监听事件 public ...原创 2021-05-15 19:08:08 · 480 阅读 · 0 评论 -
SpringIOC容器初始化流程12大步源码解析
目录1.概要2.AnnotationConfigApplicationContext构造器3.容器刷新第一步--prepareRefresh()准备上下文环境4.第二步创建工厂实例5. 第三步预准备工厂6.第四步postProcessBeanFactory7. 第五步执行所有的BeanFactory后置增强器8. 第六步注册所有的bean的后置处理器 BeanPostProcessors9. 第七步初始化国际化组件10. 第八步初始化事件多播器组件11. 第九步o原创 2021-03-29 21:51:22 · 914 阅读 · 2 评论 -
SpringIOC中Bean的生命周期以及各种PostProcessor后置处理器的执行时机
一.SpringIOC大致流程可以总结为 读取解析配置文件 -> 组装bean定义放到Map -> 根据bean定义依次创建对象 -> 把对象都放到map 这四个大步骤二.Spring有三种生命周期增强器BeanFactoryPostProcessor Bean工厂后置处理器,可以对工厂进行增强 BeanPostProcessor Bean的后置处理器,对Bean的实例化前后,初始化前后进行干预。 InitalizingBean Bean完全初始化后可以进行一波处理...原创 2021-03-26 20:53:50 · 941 阅读 · 2 评论 -
SpringIOC运行流程概要
1. IOC架构原理图1. 首先呢在spring中所有的资源都用Resource表示,比如我们创建bean常用的方式有xml 或注解,这些资源代表bean的配置清单,可以比喻成bean的创建“图纸”。如下代码2.BeanDefinitionReader bean定义读取配置3. BeanDefinitionRegister bean定义注册器,它的作用就是利用BeanDefinitionReader把我们的资源加载成一个个BeanDefinition(Bean定义)例如我们用x.原创 2021-03-18 20:54:50 · 202 阅读 · 0 评论