spring bean的生命週期

2021-08-04 02:47:43 字數 783 閱讀 5175

spring 對 bean 進行例項化;

spring 將值和bean的引用注入到bean對應的屬性中;

如果bean實現了 beannameaware 介面,spring將 bean 的id 傳遞給 setbeanname( )方法;

如果 bean 實現了 beanfactoryaware 介面,spring 將呼叫 setbeanfactoryaware() 方法,將 beanfactory 容器例項傳入;

如果 bean 實現了 beanpostprocessor 介面,spring 將呼叫它的 postprocessbeforeinitialization() 方法;

如果 bean 實現了 initializingbean 介面,spring 將呼叫它的 afterpropertiesset() 方法。類似的,如果 bean 使用 ini-method 宣告了 初始化方法,該方法也會被呼叫;

如果 bean 實現了 beanpostprocessor 介面,spring 將呼叫它們的 postprocessafterinitialization() 方法;

此時,bean 已經準備就緒,可以被應用程式使用了,它們將一直駐留在應用上下文中,直到應用上下文被銷毀;

如果 bean 實現了 disposablebean 介面,spring 將呼叫它的 destroy() 介面方法。同樣,如果 bean 使用destroy-method 宣告了銷毀方法,該方法也會被呼叫。

Spring Bean生命週期

1.容器尋找bean的定義資訊並且將其實例化。2.受用依賴注入,spring按照bean定義資訊配置bean的所有屬性。3.如果bean實現了beannameaware介面,工廠呼叫bean的setbeanname 方法傳遞bean的id。4.如果bean實現了beanfactoryaware介面,...

spring bean生命週期

生命週期 定義,初始化,使用,銷毀 一.初始化 方法1.實現org.springframework.beans.foctory.initializingbean介面,覆蓋afterpropertiesset方法。系統會自動查詢afterpropertiesset方法,執行其中的初始化操作 方法2.配...

Springbean生命週期

springbean的完整生命週期大致如下 1 首先例項化 beanfactorypostprocessor的實現類,執行它的postprocessorbeanfactory方法 2 例項化beanpostprocessor 的實現類 3 例項化 instantiationawarebeanpost...