Spring-02 -Spring 建立物件的三種方式 :1.通過構造方法建立/2.例項工廠/3.靜態工廠
阿新 • • 發佈:2018-12-08
- 通過構造方法建立
1.1 無參構造建立:預設情況.
1.2 有參構造建立:需要明確配置
1.2.1 需要在類中提供有參構造方法
1.2.2 在 applicationContext.xml 中設定呼叫哪個構造方法建立物件
1.2.2.1 如果設定的條件匹配多個構造方法,則會執行最後的構造方法.
1.2.2.2 index : 引數的索引,從 0 開始
1.2.2.3 name: 引數名
1.2.2.4 type:型別(區分開關鍵字和封裝類 int 和Integer)
<bean id="peo" class="com.bjsxt.pojo.People"> <!-- ref 引用另一個bean value 基本資料型別或 String 等 --> <constructor-arg index="0" name="id" type="int" value="123"></constructor-arg> <constructor-arg index="1" name="name" type="java.lang.String" value="張三"></constructor-arg> </bean>
- 例項工廠
1.1 工廠設計模式:幫助建立類物件.一個工廠可以生產多個物件.
1.2 例項工廠:需要先建立工廠,才能生產物件
1.3 實現步驟:
1.3.1 必須要有一個例項工廠
public class PeopleFactory { public People newInstance(){ returnnew People(1,"測試"); } }
2.3.2在 applicationContext.xml 中配置兩個標籤:工廠物件factory-bean和需要建立的物件方法:factory-method.
<bean id="factory" class="com.bjsxt.pojo.PeopleFactory"> </bean> <bean id="peo1" factory-bean="factory" factory-method="newInstance"> </bean>
2.3.3測試例項工廠
PeopleFactory factory=new PeopleFactory(); People peo1=pf.newInstance(); System.out.print(peo1);
- 靜態工廠
1.1 不需要建立工廠,可以快速建立物件.
1.2 實現步驟
1.2.1編寫一個靜態工廠(在方法上新增static)
public class PeopleFactory { public static People newInstance(){ return new People(1,"測試"); }
1.2.2 在applicationContext.xml 中配置兩個標籤:
工廠物件的類class和需要建立的物件方法:factory-method.編寫一個靜態工廠(在方法上新增static)
<bean id="peo2"class="com.bjsxt.pojo.PeopleFactory" factory-method="newInstance"></bean>
1.2.3 測試方法
People people1=PeopleFactory.newInstance();
System.out.println(people1);