Spring Framework
兵临奇点
亦余心之所善兮,虽九死其犹未悔.
展开
-
Spring源码系列——手撸一个@EnableXXX
一. 前言 耍了一个国庆节,感觉好累~~ 必须写一篇文章休息一下! 通过前面几篇源码系列的学习之后,有必要进行一个阶段性总结了。基于前面的学习,我们已经非常清楚了Spring是如何基于BeanFactoryPostProcessor和BeanDefinitionRegistoryPostProcessor来插手BeanFactory的扩展的原理;@Configuration/@Import/@ComponentS原创 2020-10-11 19:00:00 · 1544 阅读 · 1 评论 -
Spring源码系列——ConfigurationClassPostProcessor源码解析
写在前面最近我发现我辛辛苦苦写的文章,被很多人直接Copy到知乎/微信公众号等其他平台改改样式就变成他的原创文章了~~ 有些人气旺盛的公众号直接阅读量破万~~ 各种维权无果.很伤心~~ 我写文章的目的不是为了吸引眼球,我写的不是最好,也不求多少关注者多少阅读量. 我只是一个踏实的开发者将平时的点滴学习和思考进行记录而已~~ 尊重原创,人人自重且有责~~一. 前言在这三篇文章以Java Config的启动方式系统的梳理了Spring在启动过程的源码解析。Spring源码系列——容器的启动过程(一)S原创 2020-09-13 19:17:43 · 472 阅读 · 3 评论 -
Spring源码系列——容器的启动过程(三)
一. 前言Spring源码系列——容器的启动过程(一)中,我们解析了构造方法.Spring源码系列——容器的启动过程(二)中,我们解析了注册方法.本篇文章,分析最后一个方法refresh()!public AnnotationConfigApplicationContext(Class<?>... componentClasses) { this(); register(componentClasses); // 3.刷新整个容器 refresh();}原创 2020-08-22 18:56:47 · 326 阅读 · 0 评论 -
Spring源码系列——容器的启动过程(二)
一. 前言在上一篇文章Spring源码系列——容器的启动过程(一)中,我们解析了构造方法. 本篇文章我们继续解析第二个方法public AnnotationConfigApplicationContext(Class<?>... componentClasses) { this(); // 2.基于配置类注册相关信息 register(componentClasses); refresh();}二. register()方法解析无参构造方法解析完毕之后原创 2020-08-22 18:56:06 · 233 阅读 · 0 评论 -
Spring源码系列——容器的启动过程(一)
一. 前言Spring家族特别庞大,对于开发人员而言,要想全面征服Spring家族,得花费不少的力气。俗话说,打蛇打七寸,那么Spring家族的“七寸”是什么呢?我心目中的答案一直都是 Spring Framework!本篇文章记录我自己在学习Spring Framework的过程中的一小部分源码解读和梳理,以@Configuration为主题来谈一谈Spring 容器在启动过程中是如何扫描Bean的。二. 学习方法论我相信每个想变成优秀的开发人员都想弄懂Spring源码,我亦如此。于是通过很多途径原创 2020-08-22 18:55:04 · 314 阅读 · 0 评论 -
Spring源码系列——FactoryBean源码解析
前言在实际开发当中,如果偏向于系统基础架构开发的话,对于FactoryBean的使用应该不会特别陌生。FactoryBean和BeanFactory这二者经常会被拿出来比较,原因在于这二者的名字看起来很容易让人混淆,然而这二者的原理和作用完全不一样。本篇文章将围绕FactoryBean展开源码解析。FactoryBean接口public interface FactoryBean<T> { // 返回创建的bean对象 T getObject() throws Exception;原创 2020-08-02 18:55:22 · 618 阅读 · 1 评论