Spring集合注入

xiaoxiao2026-09-11  5

Spring可以对集合类型进行注入包括:Set集合,properties属性集合,Map集合以及List集合

注入方式如下:

package com.test; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Properties; import java.util.Set; import java.util.List; public class UserServiceImplement implements IUserService { public Set<String> getS() { return s; } public void setS(Set<String> s) { this.s = s; } public Map<String, String> getM() { return m; } public void setM(Map<String, String> m) { this.m = m; } public Properties getP() { return p; } public void setP(Properties p) { this.p = p; } public List<String> getL() { return l; } public void setL(List<String> l) { this.l = l; } private Set<String> s = new HashSet<String>(); private Map<String, String> m = new HashMap<String, String>(); private Properties p = new Properties(); private List<String> l = new ArrayList<String>(); public void saveUser() { System.out.println("Set集合注入"); for (String str : s) { System.out.println(str); } System.out.println("------------------------------"); System.out.println("Map集合注入"); for (String str : m.values()) { System.out.println(str); } System.out.println("------------------------------"); System.out.println("Properties属性集合注入"); for (Object str : p.values()) { System.out.println(str); } System.out.println("------------------------------"); System.out.println("List集合注入"); for (String str : l) { System.out.println(str); } } }

 要注意的是:这些集合属性也必须要有对应的setter方法

<?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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"> <context:annotation-config /> <bean id="userservice" class="com.test.UserServiceImplement"> <property name="s"> <set> <value>SetValue1</value> <value>SetValue2</value> <value>SetValue3</value> </set> </property> <property name="m"> <map> <entry key="MapKey1" value="MapValue1"></entry> <entry key="MapKey2" value="MapValue2"></entry> <entry key="MapKey3" value="MapValue3"></entry> </map> </property> <property name="p"> <props> <prop key="PropertiesKey1">PropertiesValue1</prop> <prop key="PropertiesKey2">PropertiesValue2</prop> <prop key="PropertiesKey3">PropertiesValue3</prop> </props> </property> <property name="l"> <list> <value>ListValue1</value> <value>ListValue2</value> <value>ListValue3</value> </list> </property> </bean> </beans>

 测试类:

package com.test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Test { public static void main(String[] args) { ApplicationContext ctx = new ClassPathXmlApplicationContext( "com/test/bean.xml"); IUserService us = (IUserService) ctx.getBean("userservice"); us.saveUser(); } }

 

相关资源:Spring对集合的装配(各种集合类型的属性的注入方式)
转载请注明原文地址: https://www.6miu.com/read-5052531.html

最新回复(0)