
Spring源码解析
人工智障践行师
这个作者很懒,什么都没留下…
展开
-
【六】Spring IoC 最全源码详解之bean实例化过程
如果将Spring初始化过程中创建bean之前的准备工作比喻成生命从无到有,从单细胞生命变为多细胞生命,从海洋蔓延到陆地,从……的话,那么本章即将介绍的bean实例化过程就是寒武纪生命大爆发!目录1.getBean2.createBean3.createBeanInstance3.1 寻找构造函数进行实例化3.1.1 利用默认构造函数实例化3.1.2 利用带参构造函...原创 2019-02-23 22:01:15 · 2278 阅读 · 2 评论 -
【八】Spring IoC 最全源码详解之bean的循环依赖
先有鸡还是先有蛋,这是一个问题。目录1. 什么是循环依赖2. Spring针对循环依赖的解决方案2.1 亚当的登场2.2 夏娃的诞生2.3 寻找亚当2.4 完成亚当的创建3. 附录:本项目工程文件1. 什么是循环依赖你中有我,我中有你,就是循环依赖。举个例子,本文使用的项目中“yadang”与“xiawa”这两个bean就是循环依赖的(参考附录)。Cla...原创 2019-03-01 19:51:54 · 726 阅读 · 3 评论 -
【七】Spring IoC 最全源码详解之bean的依赖注入
上篇文章,我在开头将bean实例化过程比喻成寒武纪生命大爆发。如果你同意这个看法的话,那本文解析的bean的依赖注入就是生命的形式生物从两栖进化到爬行,从爬行进化到哺乳,从哺乳进化到类人猿,从低等进化到高等的过程。本文撰写累计时常10小时,建议阅读时间5小时。去趟卫生间,等你回来我们就开始吧。目录1. applyMergedBeanDefinitionPostProcessors...原创 2019-02-27 19:25:24 · 1922 阅读 · 2 评论 -
【五】Spring IoC 最全源码详解之registerBeanPostProcessors
目录1. BeanPostProcessor是什么2. 流程详解3.BeanPostProcessor的作用本节将继续按照refresh()方法中的执行顺序,分析BeanPostProcessor的注册过程。1. BeanPostProcessor是什么public interface BeanPostProcessor { default Object postPro...原创 2019-02-21 12:44:40 · 1086 阅读 · 0 评论 -
【四】Spring IoC 最全源码详解之 invokeBeanFactoryPostProcessors与ConfigurationClassPostProcessor扫包
地球形成 距今46亿年地球冷却形成地壳 距今39亿年~25亿年生命出现 距今35亿年前细菌的出现 距今30亿年前光合作用 距今20亿年前多细胞生物 距今16亿年前生命登上陆地 距今5亿年前鱼类出现 距今5亿年前植物出现 ...原创 2019-02-17 18:23:38 · 1083 阅读 · 1 评论 -
【三】Spring IoC 最全源码详解之 prepareBeanFactory
工欲善其事,必先利其器。 —— 《论语·卫灵公》 本文将开始介绍refresh()方法。public AnnotationConfigApplicationContext(Class<?>... annotatedClasses) { this(); register(...原创 2019-02-14 23:37:48 · 956 阅读 · 2 评论 -
【二】Spring IoC 最全源码详解之 register
如果我有8小时的时间砍一棵树,我就会花费6小时磨利自己的斧子。” ——亚伯拉罕·林肯 public AnnotationConfigApplicationCo...原创 2019-02-11 23:55:35 · 1072 阅读 · 0 评论 -
【一】Spring IoC 最全源码详解之 Spring容器创建流程
《圣经》旧约.创世纪:起初,神创造天地。地是空虚混沌,渊面黑暗; 神的灵运行在水面上。神说:“要有光。”就有了光。 神看光是好的,就把光暗分开了。 神称光为昼,称暗为夜。有晚上,有早晨,这是头一日。 ...原创 2019-01-31 23:55:59 · 1297 阅读 · 1 评论 -
【九】Spring IoC 最全源码详解之initializeBean
如果bean的依赖注入完成比作进化出猴子,那么最后的bean初始化过程就是给猴子穿上了衣服,变成了人。目录1.实现Aware接口对bean的设置2.依次回调bean后置处理器的postProcessBeforeInitialization方法2.1ApplicationContextAwareProcessor2.2ImportAwareBeanPostProces...原创 2019-03-06 21:59:24 · 2178 阅读 · 0 评论