spring中bean建立的細節

2021-07-16 15:31:24 字數 901 閱讀 5455

1)

物件建立:單例/

多例 * scope="singleton", 預設值,

即預設是單例

【service/dao/

工具類】

*  scope="prototype", 多例;

【action

物件】

*  * 2) 什麼時候建立?

*   scope="prototype"  在用到物件的時候,才建立物件。

*    scope="singleton"  在啟動

(容器初始化之前),

就已經建立了

bean

,且整個應用只有乙個。

* 3)是否延遲建立

*   lazy-

init

="false" 

預設為false, 

不延遲建立,即在啟動時候就建立物件

*   lazy-

init

="true"  

延遲初始化,

在用到物件的時候才建立物件

*    (只對單例有效)

* 4) 建立物件之後,初始化/銷毀

*   init

-method="init_user"      

【對應物件的

init_user

方法,在物件建立愛之後執行】

*    destroy-

method="destroy_user" 

【在呼叫容器物件的

destriy

方法時候執行,

(容器用實現類)】

aplicationcontext.xml

<?xml version="1.0" encoding="utf-8"?>

spring中bean的建立

問題 1 bean 的建立時機 bean 是在什麼時候被建立的,有哪些規則?容器初始化的時候會預先對單例和非延遲載入的物件進行預先初始化。其他的都是延遲載入是在第一次呼叫getbean 的時候被建立。從 defaultlistablebeanfactory 的 preinstantiatesingl...

spring容器中的bean建立

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

Spring中控制Bean的建立

spring預設情況下,所有的spring bean均是單一的,當在spring中宣告時,有宣告 bean範圍的選項,為了使得每次都能產生乙個新的bean例項,可以給bean填加乙個屬性 scope prototype 利用工廠方法建立bean 這是個設計模式 單例類 設計模式中的單鍵模式 其實就是...