4.Spring創建對象

Spring 創建對象的三種方式

  1. 通過構造方法創建
    1. 無參構造創建:默認情況.
    2. 有參構造創建:需要明確配置
      • 需要在類中提供有參構造方法
      • 在 applicationContext.xml 中設置調用哪個構造方法創建對象
        • 如果設定的條件匹配多個構造方法執行最後的構造方法
        • index: 參數的索引,從 0 開始
        • name: 參數名
        • 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. 工廠設計模式:幫助創建類對象.一個工廠可以生產多個對象.
    2. 實例工廠:需要先創建工廠,才能生產對象
    3. 實現步驟:
      2.3.1 必須要有一個實例工廠
public class PeopleFactory { 
    public People newInstance(){
        return new People(1,"測試");
    }
}

​ 2.3.2 在applicationContext.xml中配置工廠對象和需要創建的對象

<bean id="factory" 
      class="com.bjsxt.pojo.PeopleFactory">
</bean> 
<bean id="peo1" factory-bean="factory" factory-method="newInstance"></bean>
  1. 靜態工廠
    1. 不需要創建工廠,快速創建對象.
    2. 實現步驟
      3.2.1 編寫一個靜態工廠(在方法上添加 static)
public class PeopleFactory { 
    public static People newInstance(){
        return new People(1,"測試");
    }
}

​ 3.2.2 在 applicationContext.xml 中

<bean id="peo2" class="com.bjsxt.pojo.PeopleFactory" factory-method="newInstance"></bean>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章