spring為物件 bean 屬性賦值(注入)

2021-10-02 05:17:44 字數 1355 閱讀 2994

public class people

public int getid()

public void setid(int id)

public string getname()

public void setname(string name)

public setgetsets()

public void setsets(setsets)

}

例如:

public people(int id, string name)

public people(string name, int id )

注意:當有多個有參構造方法符合情況時,spring框架找從上到下排序的最後乙個進行賦值;即2在1後(如上),執行第2個;若1在2後執行第1個;

配置檔案中:

或 或

關於的引數解釋:

index:形參的索引值,從0開始;

name:形參的名稱,根據名稱找到第幾個引數;

type:形參型別(區分開關鍵字和封裝類,int和integer);

ref:引數是引用另外乙個bean;

value:引數是基本資料型別或字串等;

注意:(index,name,type用來控制用哪個構造方法,當有多個構造方法都匹配時,用順序排在最後的那乙個構造方法,index,name,type可以出現乙個,也可以出現多個)

或 張三

屬性如果是set時:

1

2

屬性如果是map時:

屬性如果是陣列時:

屬性是property(屬性)型別時:

property型別為乙個demo.properties檔案,其中內容為a=b,b=c…等鍵值對

b

屬性如果是list<?>型別時:

若list只有乙個值:

此外還有很多態別,alt+/即可檢視

設定引數進行自動注入的方法

teacher1 = getbean(「teacher」);

teacher2 = getbean(「teacher」);

system.out.println(teacher1==teacher2)時為true;

說明teacher只例項化一次

spring獲取bean物件(六)

下面我們接著abstractbeanfactory的dogetbean中方法,如果未從快取中獲取到例項物件就會進入到下面方法 if mbd.issingleton catch bean ception ex bean getobjectforbeaninstance sharedinstance,n...

Spring 如何建立 bean 物件?

前文 spring 如何從 ioc 容器中獲取物件?從整體上分析了如何從 spring ioc 容器獲取乙個 bean 物件。該邏輯由 abstractbeanfactory dogetbean 方法實現,主要流程如下 本文進一步深入細節,主要分析如何建立 singleton 單例 型別的物件。從流...

Spring入門之bean的屬性

可以在bean中配置scope屬性,例如 lazy init false bean 在預設情況下,spring建立bean是單例模式 scope預設是singleton singleton 單例 屬性是共享的 一般情況下,把資料存放到方法中的變數中 prototype 多例 當乙個bean是多例模式...