spring bean的載入順序

2021-08-21 10:28:59 字數 450 閱讀 7036

一、spring裝配bean的過程

1. 例項化;  

2. 設定屬性值;  

3. 如果實現了beannameaware介面,呼叫setbeanname設定bean的id或者name;  

4. 如果實現beanfactoryaware介面,呼叫setbeanfactory 設定beanfactory;  

6. 呼叫beanpostprocessor的預先初始化方法;  

7. 呼叫initializingbean的afterpropertiesset()方法;  

8. 呼叫定製init-method方法;  

9. 呼叫beanpostprocessor的後初始化方法;  

spring容器關閉過程

1. 呼叫disposablebean的destroy();  

2. 呼叫定製的destroy-method方法;

spring bean載入順序指定方式之一

在某些情況下,我們在容器啟動的時候做一些事情,舉個例子,載入快取等。此時我們會希望某個bean先被載入並執行其中的afterpropertiesset方法。因為spring預設是通過context component scan base package配置中類的全名進行公升序載入的,因此,如果希望某...

Spring bean 載入執行順序例項解析

問題 有乙個bean為a,乙個bean為b。想要a在容器例項化的時候的乙個屬性name賦值為b的乙個方法funb的返回值。如果只是在a裡單純的寫著 private b b private string name b.funb 會報錯說nullpointexception,因為這個時候b還沒被set進...

spring bean載入過程

spring通過資源載入器載入相應的xml檔案,使用讀取器讀取資源載入器中的檔案到讀取器中,在讀取過程中,解析相應的xml檔案元素,轉化為spring定義的資料結beandefinition,把相應的beandefinition註冊到登錄檔中。登錄檔中包含的beandefinition的資料結構,沒...