在 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