先放一张图 

springBean生命周期


初始化过程

1 调用beanFactoryPostProcessor 的无参构造函数 构建beanFactoryPostProcessor  调用 psotProcessorBeanfactory(),

2调用beanPostProcessor 无参构造函数

3调用InstantiationAwareBeanPostProcessorAdapter无参构造函数 构建InstantiationAwareBeanPostProcessorAdapter

3.1  调用本类(InstantiationAwareBeanPostProcessorAdapter) postProcessBeforeInstantiation() 方法
3.1.1调用bean中的无参构造函数

3.2调用本类(InstantiationAwareBeanPostProcessorAdapter)postrocessorPropertyValue对已经实例化的bean注入属性

    3.3调用BeanNameAware 接口的 setBeanName方法

    3.4调用BeanFactoryAwaresetBeanfactory方法

    3.5 调用2beanPostProcessor postProcessorBeforInitalization 对实体类进行修改

3.6调用调用initializingBean接口的afterPropertySet方法

3.7 调用beaninit方法

3.8 调用2beanPostProcessor中的postProcessorbeforInitialization

3.9调用本类(InstantiationAwareBeanPostProcessorAdapter)postProcessAfterInitialization()方法

到此 springbean容器初始化完成

spring 容器销毁

4调用diPosiableBean接口 调用他的destory() 方法  

5调用beandestory方法

添加自己学习springBean生命周期的demo 地址 链接:https://pan.baidu.com/s/1lQftsR_xQedTfRiGwVDIzA 密码:nhzd

相关文章: