spring容器中bean的生命週期

2021-07-29 06:57:33 字數 819 閱讀 2982

1.最近在看《spring實戰第四版》看上面分析到bean在spring容器中的生命週期

2.在bean準備就緒之前,bean工廠執行了一下步驟

spring 對bean進行例項化

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

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

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

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

如果bean實現了initializingbean介面,spring將呼叫他們的afterpropertiesset()方法,類似的,如果bean使用init-method宣告了初始化

方法,也會被呼叫

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

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

如果bean實現了disposablebean介面,spring將呼叫他的destroy()介面方法,同樣的,若bean使用了destroy-method宣告了銷毀方法,

該方法也會被呼叫

spring容器中的bean建立

springioc spring容器中的bean建立 三種方案 面試題 利用預設的建構函式 利用靜態工廠方法 利用例項工廠方法 建立物件的時機 預設情況下,在spring啟動的時候,建立納入spring容器中所有的bean 在spring容器啟動的時候,可以檢查錯誤 但是如果bean的屬性中有資料,...

Spring容器中Bean的lazy init屬性

在spring容器中新增兩個物件 testbean class com.fhx.testbean testbean class com.fhx.testbean lazy init false lazy init 設定只對scop屬性為singleton的bean起作用 lazy init fals...

Spring中利用容器得到Bean物件

在 spring 中提供了兩種方法用來載入配置檔案的資訊和得到我們需要的 bean 這就是 beanfactory 介面和介面 下面分別來介紹如何得到 bean物件 1 beanfactory 方式,spring 為我們提供了很多易用的 beanfactory 介面實現,其中 xmlbeanfact...