spring中bean的載入過程

2022-06-10 09:42:15 字數 704 閱讀 3889

1 關於beandefinition, 這是乙個介面, 繼承了兩個介面,

分別是: attributeaccessor, 所以可以處理屬性

beanmetadataelement, 所以可以持有bean元資料元素, 作用是可以持有xml檔案的乙個bean標籤對應的object。

我初步把這個beandefinition視作乙個bean的包裝類, 好像spring中對bean的處理都是通過對beandefinition的處理來完成的.

由於還沒有了解後續, 以後看法可能會有所改變

這篇文章對beandefinition做了乙個非常人性化的解讀, 多看看,-----理解為:beandefinition是對bean的乙個描述, 可以記錄bean中的各種資訊, 又通過兩個介面可以做到對bean資訊的處理, 

所以, 可以把beandefinition理解為乙個裝有bean的各種資訊(包括屬性資訊和其它)的容器, 當需要bean時通過反射來獲取相應的bean.

2 關於spring中的4不同出場方式的bean

--@annotatioin註解修飾的bean

--@bean註解修飾的bean

--配置檔案中定義的bean

--spring內部定義的bean

關於前兩種bean好像是一樣的, 但是聽教程的時候, 老師說, 底層對兩種bean的定義方式不一樣

spring中bean的延遲載入

概念解析 預設情況下,bean沒有延時初始化。只要spring容器被建立,核心配置檔案所配的bean都會立即初始化,並把初始化的bean物件放到spring容器中。這樣會浪費效能和儲存空間。三種清況 為了提交效能和儲存空間的浪費,可以延時初始化bean物件.就在bean標籤中設定 lazy init...

spring中bean的懶載入屬性

懶載入 用lazy init。告訴spring容器是否以懶載入的方式創造物件。用的時候才載入構造,不用的時候不載入 取值 true 懶,真正呼叫到的時候再載入 false 非懶,已啟動spring容器就建立物件 default 懶 懶載入與非懶載入的優缺點 懶載入 物件使用的時候才去建立,節省資源,...

spring動態載入bean

廢話不多說,直接上 private static final string strs new string protected mapremotes new hashmap for int i 0 i string name one if i 0 beandefinitionbuilder user...