通过<list/>、<set/>、<map/>及<props/>元素可以定义和设置与Java Collection类型对应List、Set、Map及Properties的值。下面通过一个简单例子说明一下:
CollectionService接口
package org.spring.service; import java.util.List; import java.util.Map; import java.util.Properties; import java.util.Set; public interface CollectionService { public Set<String> getSets(); public List<String> getLists(); public Properties getProperties(); public Map<String, String> getMaps(); }
CollectionService的实现类CollectionServiceBean
package org.spring.service.impl; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; import java.util.Set; import org.spring.service.CollectionService; public class CollectionServiceBean implements CollectionService { private Set<String> sets = new HashSet<String>(); private List<String> lists = new ArrayList<String>(); private Properties properties = new Properties(); private Map<String, String> maps = new HashMap<String, String>(); public Map<String, String> getMaps() { return maps; } public void setMaps(Map<String, String> maps) { this.maps = maps; } public Properties getProperties() { return properties; } public void setProperties(Properties properties) { this.properties = properties; } public List<String> getLists() { return lists; } public void setLists(List<String> lists) { this.lists = lists; } public Set<String> getSets() { return sets; } public void setSets(Set<String> sets) { this.sets = sets; } }
spring.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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="collectionServiceBean" class="org.spring.service.impl.CollectionServiceBean"> <property name="sets"> <set> <value>sets:First</value> <value>sets:Second</value> <value>sets:Third</value> </set> </property> <property name="lists"> <list> <value>lists:First</value> <value>lists:Second</value> <value>lists:Third</value> </list> </property> <property name="properties"> <props> <prop key="key1">value1</prop> <prop key="key2">value2</prop> <prop key="key3">value3</prop> </props> </property> <property name="maps"> <map> <entry key="key-1" value="value-1"></entry> <entry key="key-2" value="value-2"></entry> <entry key="key-3" value="value-3"></entry> </map> </property> </bean> </beans>
测试类
package org.spring.junit; import org.junit.Test; import org.spring.service.CollectionService; import org.springframework.context.support.ClassPathXmlApplicationContext; public class SpringCollectionTest { @Test public void testCollection() { ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext( "spring.xml"); CollectionService collectionService = (CollectionService) ctx .getBean("collectionServiceBean"); System.out.println("============sets============"); for (String value : collectionService.getSets()) { System.out.println(value); } System.out.println("============lists============"); for (String value : collectionService.getLists()) { System.out.println(value); } System.out.println("============properties============"); for (Object key : collectionService.getProperties().keySet()) { System.out.println(key + " = " + collectionService.getProperties().getProperty( (String) key)); } System.out.println("============maps============"); for (Object key : collectionService.getMaps().keySet()) { System.out.println(key + " = " + collectionService.getMaps().get(key)); } } }
控制台输出结果:
相关推荐
在Spring框架中,集合类型的属性装配是常见的需求,如List、Set、Map等。这些集合在配置文件或注解中进行装配,可以帮助我们管理复杂的对象依赖关系。本篇将详细介绍Spring如何装配各种集合类型的属性。 1. **XML...
在Spring框架中,集合装配是将一组对象注入到如List、Set、Map等集合类型属性中的过程。这个过程是依赖注入(Dependency Injection,DI)的一个重要方面,它使得应用程序更加灵活,易于测试和维护。本篇文章将深入...
在Spring中可以装配4种集合类型属性:List、set、Map和Properties。与这四种集合对应的标签是、、、。CollectionBean是一个包含上述4种集合类型的JavaBean,代码如下:
在Spring框架的学习中,"装配各种集合类型的属性"是一个重要的概念,这涉及到如何将不同的集合对象,如List、Set、Map等,与Spring的依赖注入(Dependency Injection, DI)机制相结合,实现灵活的配置和管理。...
马程序员_黎活明__Spring如何装配各种集合类型的属性.ppt )
总结,Spring集合(List, Map, Set)的自动装配是Spring DI的一种体现,它使得配置更加简洁,代码更加模块化。通过熟练运用这一特性,开发者可以更好地设计和构建松散耦合的应用程序。在实际项目中,结合Java注解和XML...
6.8.1. 在Spring中使用AspectJ来为domain object进行依赖注入 6.8.1.1. @Configurable object的单元测试 6.8.1.2. 多application context情况下的处理 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来...
1.1 收集方式 1.2 直接装配方式 2.1 收集装配 2.2 直接装配方式
此外,Spring4还支持对集合类型的自动装配,如List、Set、Map等。 为了更好地实践这些概念,我们可以查看压缩包中的Spring0501文件,这可能包含了示例代码或教程资源。通过实际操作和调试,你可以更深入地理解和...
装配bean——集合类型注入值: 本文介绍数组、list集合、set集合、map集合、properties的注值 博客原文地址:http://blog.csdn.net/tingzhiyi/article/details/52104203
这篇博客可能详细介绍了如何使用setter注入向bean中注入各种类型的值,如基本类型、字符串、其他bean、集合类型等。 1. **基本类型的注入**:对于Java的基本数据类型,如int、String等,Spring可以通过setter方法...
7. **集合装配**:Spring支持对数组、List和Map类型的属性进行装配,使得我们可以方便地管理一组相似的Bean。 8. **Spring的生命周期**:每个Spring管理的Bean都有一个生命周期,包括初始化、活跃期和销毁三个阶段...
7. **泛型集合注入**:Spring 支持向 Bean 注入 List、Set、Map 等集合类型,方便处理多个依赖。 8. **工厂方法**:允许通过工厂方法来创建 Bean,提供更灵活的实例化策略。 在实际项目中,Spring AOP 和 Spring ...
3. **Spring Cloud**:这是一组用于构建微服务架构的工具包和服务集合,利用Spring Boot的特性,Spring Cloud为开发者提供了一种简单的方式来构建分布式系统。 ### 六、Spring的生态系统 除了上述提到的一些主要...
Spring中的@Autowired注解可以用于字段、方法或参数级别,表示需要自动装配的依赖。在我们的模拟实现中,我们需要一个注解处理器来扫描带有@Autowired注解的元素,并尝试找到匹配的bean进行装配。这需要实现以下步骤...
在Spring中可以通过在XML配置文件中添加context命名空间并声明注解驱动元素,或者使用Java配置类上的注解(如@ComponentScan)来启动注解装配。 27、@Component,@Controller,@Repository,@Service有何区别? 这些...
- **4.4.2.4 集合**:介绍了如何配置集合类型的依赖。 - **4.4.2.5 null 和空字符串**:解释了如何处理null值和空字符串。 - **4.4.2.6 使用p-命名空间的XML快捷方式**:介绍了p-命名空间的使用方法。 - **4.4....
标题中的"Spring_0700_IOC_Collections"指的是Spring框架中的IoC(Inversion of Control,控制反转)容器对集合类型的处理。在这个教程或博文中,我们可能将深入理解Spring如何管理和装配集合对象,如List、Set、Map...
此外,还支持集合类型的依赖注入,如List、Set等。 4. **Bean的作用域**:Spring提供了五种bean的作用域:Singleton(单例)、Prototype(原型)、Request、Session和Global Session。选择合适的作用域有助于管理...