一、写博客也有一段时间了,感觉东西越来越多了,但是自己掌握的东西越来越少了,很多时候自己也在想。学那么多东西,到头来知道的东西越来越少了。是不是很奇怪,其实一点都不奇怪。 我最近发现了一个很大的问题,就是自己做开发这么久了。很多原理以及实现都不是很了解,包括自己在假装面试了解自己不足的时候,也突显除 ...
分类:
编程语言 时间:
2018-08-02 23:07:05
阅读次数:
198
1.Spring整体架构和环境搭建 1.1 Spring的整体架构 (1)Core Container Core Container(核心容器) 包含有Core,Beans,Context和Expression Language模块。 (2) Data Access/Integration (3) ...
分类:
编程语言 时间:
2018-08-01 22:22:43
阅读次数:
164
摘要: 本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 完成BeanFactory的初始化工作,其中包括ConversionService的设置、配置冻结以及非延迟加载的bean的初始化工作。 一、ConversionService的设置 ...
分类:
编程语言 时间:
2018-07-30 14:50:52
阅读次数:
181
摘要: 本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 目录 一、激活注册的 BeanFactoryPostProcessor 1. BeanFactoryPostProcessor 的典型应用:PropertyPlaceholderCo ...
分类:
编程语言 时间:
2018-07-30 14:39:27
阅读次数:
146
摘要: 本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 目录 一、增加SPEL语言的支持 二、增加属性注册编辑器 1. 使用自定义属性编辑器 2. 注册Spring自带的属性编辑器CustomDateEditor 3. 添加 Applic ...
分类:
编程语言 时间:
2018-07-29 22:30:08
阅读次数:
185
本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 我们不可能指望在一个函数中完成一个复杂的逻辑,而且我们跟踪了这么多Spring代码, 经历了这么多函数,或多或少也发现了一些规律:一个真正干活的函数其实是以do开头的, 比如 doGetOb ...
分类:
编程语言 时间:
2018-07-28 16:42:09
阅读次数:
158
摘要:本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 介绍过FactoryBean的用法后,我们就可以了解bean加载的过程了。前面已经提到过,单 例在Spring的同一个容器内只会被创建一次,后续再获取bean直接从单例缓存中获取,当然 ...
分类:
编程语言 时间:
2018-07-28 15:25:40
阅读次数:
138
摘要:本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 一般情况下,Spring通过反射机制利用bean的class属性指定实现类来实例化bean。在某些情况下,实例化bean过程比较复杂,如果按照传统的方式,则需要在<bean>中提供大量 ...
分类:
编程语言 时间:
2018-07-28 15:12:34
阅读次数:
125
摘要:本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 经过前面的分析,我们终于结束了对XML配置文件的解析,接下来将会面临更大的挑战,就是对bean加载的探索。bean加载的功能实现远比bean的解析要复杂得多。同样,我们还是以最开始的示 ...
分类:
编程语言 时间:
2018-07-28 13:53:59
阅读次数:
187
摘要:本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 对配置文件解析完成后,获取的beanDefiniton已经可以进行使用了,剩下的唯一工作就是注册了,也就是processBeanDefinition方法中的BeanDefinition ...
分类:
编程语言 时间:
2018-07-28 11:57:26
阅读次数:
192