`
在水伊方
  • 浏览: 110571 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

Spring中集合类型的装配

阅读更多

通过<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));
		}
	}
}

 

控制台输出结果:

 

  • 大小: 4.4 KB
分享到:
评论

相关推荐

    Spring如何装配各种集合类型的属性

    在Spring框架中,集合类型的属性装配是常见的需求,如List、Set、Map等。这些集合在配置文件或注解中进行装配,可以帮助我们管理复杂的对象依赖关系。本篇将详细介绍Spring如何装配各种集合类型的属性。 1. **XML...

    Spring对集合的装配(各种集合类型的属性的注入方式)

    在Spring框架中,集合装配是将一组对象注入到如List、Set、Map等集合类型属性中的过程。这个过程是依赖注入(Dependency Injection,DI)的一个重要方面,它使得应用程序更加灵活,易于测试和维护。本篇文章将深入...

    Spring装配集合属性

    在Spring中可以装配4种集合类型属性:List、set、Map和Properties。与这四种集合对应的标签是、、、。CollectionBean是一个包含上述4种集合类型的JavaBean,代码如下:

    Spring学习笔记(7)----装配各种集合类型的属性

    在Spring框架的学习中,"装配各种集合类型的属性"是一个重要的概念,这涉及到如何将不同的集合对象,如List、Set、Map等,与Spring的依赖注入(Dependency Injection, DI)机制相结合,实现灵活的配置和管理。...

    09_黑马程序员_黎活明__Spring如何装配各种集合类型的属性.ppt

    马程序员_黎活明__Spring如何装配各种集合类型的属性.ppt )

    Spring_集合(List_Map_Set)_自动装配

    总结,Spring集合(List, Map, Set)的自动装配是Spring DI的一种体现,它使得配置更加简洁,代码更加模块化。通过熟练运用这一特性,开发者可以更好地设计和构建松散耦合的应用程序。在实际项目中,结合Java注解和XML...

    Spring-Reference_zh_CN(Spring中文参考手册)

    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来...

    Wasabi1234#Java-Interview-Tutorial#Spring 注入集合类型1

    1.1 收集方式 1.2 直接装配方式 2.1 收集装配 2.2 直接装配方式

    第五章 Spring4 自动装配、方法注入

    此外,Spring4还支持对集合类型的自动装配,如List、Set、Map等。 为了更好地实践这些概念,我们可以查看压缩包中的Spring0501文件,这可能包含了示例代码或教程资源。通过实际操作和调试,你可以更深入地理解和...

    装配bean—集合类型注入值源码

    装配bean——集合类型注入值: 本文介绍数组、list集合、set集合、map集合、properties的注值 博客原文地址:http://blog.csdn.net/tingzhiyi/article/details/52104203

    Spring - -setter方式 向bean中注入各种类型的值

    这篇博客可能详细介绍了如何使用setter注入向bean中注入各种类型的值,如基本类型、字符串、其他bean、集合类型等。 1. **基本类型的注入**:对于Java的基本数据类型,如int、String等,Spring可以通过setter方法...

    Spring中关于Bean的管理的课件

    7. **集合装配**:Spring支持对数组、List和Map类型的属性进行装配,使得我们可以方便地管理一组相似的Bean。 8. **Spring的生命周期**:每个Spring管理的Bean都有一个生命周期,包括初始化、活跃期和销毁三个阶段...

    spring AOP 引入jar包,spring IOC 引入Jar包

    7. **泛型集合注入**:Spring 支持向 Bean 注入 List、Set、Map 等集合类型,方便处理多个依赖。 8. **工厂方法**:允许通过工厂方法来创建 Bean,提供更灵活的实例化策略。 在实际项目中,Spring AOP 和 Spring ...

    spring2.5-中文API

    3. **Spring Cloud**:这是一组用于构建微服务架构的工具包和服务集合,利用Spring Boot的特性,Spring Cloud为开发者提供了一种简单的方式来构建分布式系统。 ### 六、Spring的生态系统 除了上述提到的一些主要...

    模拟Spring的IoC容器实现注解自动装配

    Spring中的@Autowired注解可以用于字段、方法或参数级别,表示需要自动装配的依赖。在我们的模拟实现中,我们需要一个注解处理器来扫描带有@Autowired注解的元素,并尝试找到匹配的bean进行装配。这需要实现以下步骤...

    Spring系列面试题129道(附答案解析)

    在Spring中可以通过在XML配置文件中添加context命名空间并声明注解驱动元素,或者使用Java配置类上的注解(如@ComponentScan)来启动注解装配。 27、@Component,@Controller,@Repository,@Service有何区别? 这些...

    尚学堂_Spring_0700_IOC_Collections

    标题中的"Spring_0700_IOC_Collections"指的是Spring框架中的IoC(Inversion of Control,控制反转)容器对集合类型的处理。在这个教程或博文中,我们可能将深入理解Spring如何管理和装配集合对象,如List、Set、Map...

    Spring相关测试1全部

    此外,还支持集合类型的依赖注入,如List、Set等。 4. **Bean的作用域**:Spring提供了五种bean的作用域:Singleton(单例)、Prototype(原型)、Request、Session和Global Session。选择合适的作用域有助于管理...

Global site tag (gtag.js) - Google Analytics