1. 程式人生 > >Spring-02 -Spring 建立物件的三種方式 :1.通過構造方法建立/2.例項工廠/3.靜態工廠

Spring-02 -Spring 建立物件的三種方式 :1.通過構造方法建立/2.例項工廠/3.靜態工廠

  1. 通過構造方法建立 

    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 工廠設計模式:幫助建立類物件.一個工廠可以生產多個物件.

    1.2 例項工廠:需要先建立工廠,才能生產物件

    1.3 實現步驟:

      1.3.1 必須要有一個例項工廠

public class PeopleFactory {

    public People newInstance(){

        return
new 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 不需要建立工廠,可以快速建立物件.

    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);