Spring Bean的生命周期

簡述

原文:
Spring 中 BeanFactory 的生命周期與源碼解析
Bean的生命周期

1.InstantiationAwareBeanPostProcessor調(diào)用postProcessBeforeInstantiation方法
2.實例化Bean對象,調(diào)用構(gòu)造器
3.InstantiationAwareBeanPostProcessor調(diào)用postProcessAfterInstantiation方法
4.InstantiationAwareBeanPostProcessor調(diào)用postProcessPropertyValues方法
5.設(shè)置屬性

//若實現(xiàn)了Aware接口,則調(diào)用
6.設(shè)置Bean的BeanNameAware接口,調(diào)用BeanNameAware.setBeanName()
7.設(shè)置Bean的BeanFactoryAware接口,調(diào)用BeanFactoryAware.setBeanFactory()

8.調(diào)用BeanPostProcessor的postProcessBeforeInitialization方法
//調(diào)用初始化方法
9.InitializingBean接口,調(diào)用InitializingBean.afterPropertiesSet()
10.調(diào)用<bean>的init-method屬性指定的初始化方法

11.調(diào)用BeanPostProcessor的postProcessAfterInitialization方法
//容器初始化成功

12.使用Bean

//關(guān)閉容器,調(diào)用銷毀方法
13.DisposableBean接口,調(diào)用DisposableBean.destory()
14.調(diào)用<bean>的destroy-method屬性指定的初始化方法

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容