上來先砸一張圖!
bean的生命週期只有四個
例項化instantiation、屬性賦值populate、初始化initialization、銷毀destruction
都在docreate()方法中分別呼叫createbeaninstatiation()、populatebean()、initializationbean()。
原始碼如下:
可以自己實現的兩個生命週期介面// 忽略了無關**
protected object docreatebean(final string beanname, final rootbeandefinition mbd, final @nullable object args)
throws beancreationexception
// initialize the bean instance.
object exposedobject = bean;
try
}
initializationbean() 對應生命週期初始化階段
disposeablebean() 對應生命週期銷毀階段
參考
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...