Spring Bean的生命週期

2021-09-10 17:50:34 字數 878 閱讀 2077

spring 對 bean 進行例項化,預設bean是單例;

spring 對 bean 的屬性進行依賴注入;

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

如果 bean 實現了beanfactoryaware介面,spring將呼叫setbeanfactory方法,將 beanfactory 例項傳進來;

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

如果 bean 實現了initializingbean介面,它的afterpropertiesset()方法將被呼叫;

如果使用者自定義init-method屬性,則呼叫該方法;

如果 bean 實現了beanpostprocessor介面的postprocessafterinitialization()方法,則呼叫該方法;

此時,bean 已經準備就緒,bean的使用;

如果 bean 實現了disposablebean [dɪˈspəʊzəbl]介面,則用它的distroy()方法。

如果使用者自定義destroy-method屬性,則呼叫該方法;

參考部落格:

spring bean生命週期詳解 :

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...