容器的功能扩展(二)-环境准备和加载BeanFactory

一、环境准备
prepareRefresh方法主要是做一些准备工作,比如对系统属性及环境变量的初始化验证
1.1、initPropertySources复合spring的开放式结构设计,最大扩展spring的能力,可以根据自身的情况重写initPropertySources方法,进行个性化处理
1.2、validateRequiredProperties对属性进行验证,如果重写方法initPropertySources,验证的时候会走到程序走到getEnvironment().validateRequiredProperties()
二、加初始化载BeanFactory
obtainFreshBeanFactory方法实现BeanFactory的地方,经过这个函数之后就拥有了Beanfactory的全部方法
2.1、创建DefaultListableBeanFactory用来实例化
初始化BeanFactory,并进行XML的读取

2.2、指定序列化ID
2.3、定制BeanFactory
2.4、加载BeanDefinitions
2.5、使用全局变量记录BeanFactory

猜你喜欢

转载自blog.csdn.net/zhangchangbin123/article/details/80809977