spring:为JavaBean的集合对象注入属性值
在 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.
<??><beans ="http://www.springframework.org/schema/beans" ="http://www.w3.org/2001/ ="http://www.springframework.org/schema/context" ="http://www.springframework.org/schema/tx" ="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.ClassPathimport com.importnew.TestUtil;public class TestSpring { public static void main(String[] args) { ApplicationContext context = new ClassPath); 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
原标题:spring:为javabean的集合对象注入属性值
关键词:JAVA