在 spring 中可以對List、Set、Map 等集合進行配置,不過根據集合類型的不同,需要使用不同的標簽配置對應相應的集合。
1.創建 TsetUtil 類,在該類中定義List、Set、Map 類型的屬性,並設置getter 和 setter 方法。代碼如下
package com.importnew; import java.util.List; import java.util.Map; import java.util.Set; public class TestUtil { private List list; private Map map; private Set set; public List getList() { return list; } public void setList(List list) { this.list = list; } public Map getMap() { return map; } public void setMap(Map map) { this.map = map; } public Set getSet() { return set; } public void setSet(Set set) { this.set = set; } }
2.在 spring 配置文件中對 TsetUtil 進行配置,並通過<list>,<set>,<map>為 TsetUtil 的List、Set、Map集合屬性賦值。applicationContext.xml 配置文件代碼如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <bean id="testUtil" class="com.importnew.TestUtil" > <property name="list"> <list> <value>list 集合的第一個元素</value> <value>list 集合的第二個元素</value> <value>list 集合的第三個元素</value> </list> </property> <property name="set"> <set> <value>張三</value> <value>李四</value> </set> </property> <property name="map"> <map> <entry key="key1" value="java從基礎到項目死戰" /> <entry key="key2" value="java開發" /> </map> </property> </bean> <bean id="user" class="com.importnew.User"></bean> </beans>
3.編寫測試類 TestSpring ,代碼如下:
package test; import java.util.List; import java.util.Map; import java.util.Set; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.importnew.TestUtil; public class TestSpring { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); TestUtil testUtil = (TestUtil) context.getBean("testUtil"); List lists = testUtil.getList(); for(Object ss:lists){ System.out.println(ss.toString()); } Set sets = testUtil.getSet(); for(Object ss:sets){ System.out.println(ss.toString()); } Map<String,String> maps = testUtil.getMap();for (Map.Entry<String, String> entry : maps.entrySet()) { System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); } } }
———————————————————————————————————————————————————
備注:向集合中添加對象類型的元素時,<list>,<set>,<map>不僅可以添加 Stirng 類型的元素,而且可以添加對象類型的元素。如下代碼實現了向集合中添加了對象user:
<bean id="testUtil" class="com.importnew.TestUtil" > <property name="list"> <list> <value>list 集合的第一個元素</value> <value>list 集合的第二個元素</value> <value>list 集合的第三個元素</value> <ref bean="user"/> </list> </property> <property name="set"> <set> <value>張三</value> <value>李四</value> <ref bean="user"/> </set> </property> <property name="map"> <map> <entry key="key1" value="java從基礎到項目死戰" /> <entry key="key2" value="java開發" /> <entry key="user"> <ref bean="user"/> </entry> </map> </property> </bean> <bean id="user" class="com.importnew.User"></bean>
////end