JavaEE——Spring4--(2)Bean的配置

weixin_30639719發表於2020-04-05

IOC(Inversion of Control):其思想是反轉資源獲取的方向. 傳統的資源查詢方式要求元件向容器發起請求查詢資源. 作為回應, 容器適時的返回資源. 而應用了 IOC 之後, 則是容器主動地將資源推送給它所管理的元件, 元件所要做的僅是選擇一種合適的方式來接受資源. 這種行為也被稱為查詢的被動形式

 

DI(Dependency Injection) — IOC 的另一種表述方式:即元件以一些預先定義好的方式(例如: setter 方法)接受來自如容器的資源注入. 相對於 IOC 而言,這種表述更直接

 

 

 

若字面值中包含特殊字元,可以使用 <![CDATA[]]> 把字面值包裹起來。

 引用其它 Bean

       

  1.在 Bean 的配置檔案中, 可以通過 <ref> 元素 ref 屬性為 Bean 的屬性或構造器引數指定對 Bean 的引用.
  2.也可以在屬性或構造器裡包含 Bean 的宣告, 這樣的 Bean 稱為內部 Bean

 

賦值為null 必須要用<null/>

為級聯屬性賦值  

  注意級聯屬性需要先初始化後才可以為屬性賦值,否則會有異常,與Struts2不同

集合屬性 <list>, <set> 或 <map>

  配置 java.util.List 型別的屬性, 需要指定 <list> 標籤, 在標籤裡包含一些元素. 這些標籤可以通過 <value> 指定簡單的常量值, 通過 <ref> 指定對其他 Bean 的引用. 通過<bean> 指定內建 Bean 定義. 通過 <null/> 指定空元素. 甚至可以內嵌其他集合.
  陣列的定義和 List 一樣, 都使用 <list>
  配置 java.util.Set 需要使用 <set> 標籤, 定義元素的方法與 List 一樣

<!-- 裝配集合屬性 -->
	<bean id="user" class="com.atguigu.spring.helloworld.User">
		<property name="userName" value="Jack"></property>
		<property name="cars">
			<!-- 使用 list 元素來裝配集合屬性 -->
			<list>
				<ref bean="car"/>
				<ref bean="car2"/>
			</list>
		</property>
	</bean>

  

properties

配置獨立的集合Bean,以供其他的Bean進行引用

 

 

<util:list id="cars">
        <ref bean="car"/>
        <ref bean="car1"/>
        <ref bean="car2"/>
    </util:list>

    <bean id="personList" class="bean.collection.Persons">
        <property name="name" value="Jack"></property>
        <property name="age" value="23"></property>
        <property name="carList" ref="cars"></property>
    </bean>

    <bean id="personList1" class="bean.collection.Persons" p:name="skye"
    p:age="23" p:carList-ref="cars">
    </bean>

  

轉載於:https://www.cnblogs.com/SkyeAngel/p/8284713.html

相關文章