spring bean生命週期

2021-07-17 04:34:21 字數 556 閱讀 4276

生命週期:定義,初始化,使用,銷毀

一.初始化:

方法1.實現org.springframework.beans.foctory.initializingbean介面,覆蓋afterpropertiesset方法。系統會自動查詢afterpropertiesset方法,執行其中的初始化操作

方法2.配置init-method

例如設定bean中init-method=」init」那麼在初始化過程中就會呼叫相應class指定類的init()方法進行初始化工作

二 銷毀(與初始化類似)

方法1.實現org.springframework.beans.foctory.disposablebean介面,覆蓋destory方法。

方法2.配置destory-method

三 配置全域性初始化、銷毀方法(屬於預設配置,參考截圖)

注意:

當三種方式同時使用時,全域性(預設的)初始化銷毀方法會被覆蓋。

另外實現介面的初始化/銷毀方式會先於配置檔案中的初始化/銷毀方式執行。

即使沒有以上三種初始化方法也是可以編譯執行的

Spring Bean生命週期

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

Springbean生命週期

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

spring bean生命週期

defaultlistablebeanfactory bean工廠類 1 dogetbean 2 transformedbeanname 獲取beanname 過濾 和別名替換 3getsingleton 從單例快取中獲取例項 這裡涉及到迴圈依賴問題 4getparentbeanfactory 獲取...