`

spring 注入集合

 
阅读更多

List集合

1.创建ListTestBean类:

package com.spring.pojo;
import java.util.List;
//注入List类型
public class ListTestBean {
	private List<String> values;
	public List<String> getValues() {
		return values;
	}
	public void setValues(List<String> values) {
		this.values = values;
	}
	@Override
	public String toString() {
		return "ListTestBean [values=" + values + "]";
	}
}

2.创建配置spring-listInject.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.xsd">
<bean id="listBean" class="com.spring.pojo.ListTestBean">
<!-- List类型需要<list>标签来配置注入  -->
<property name="values">
<list>
<value>1</value>
<value>2</value>
<value>3</value>
</list>
</property>
</bean>
</beans>

3.创建ListInjectTest测试类:

package com.spring.test;
import junit.framework.Assert;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.pojo.ListTestBean;
@SuppressWarnings("deprecation")
public class ListInjectTest {
@Test
public void testListInject(){
	@SuppressWarnings("resource")
	ApplicationContext act=new ClassPathXmlApplicationContext("spring-listInject.xml");
	ListTestBean listBean=act.getBean(ListTestBean.class);
    System.out.println(listBean.toString());
    System.out.println(listBean.getValues().size());
    Assert.assertEquals(3, listBean.getValues().size());
}
}

 4.测试结果:

ListTestBean [values=[1, 2, 3]]
3

 Set集合

1.创建CollectionTestBean类:

package com.spring.pojo;
import java.util.Collection;
//Set类型
public class CollectionTestBean {
private Collection<String> values;
public Collection<String> getValues() {
	return values;
}
public void setValues(Collection<String> values) {
	this.values = values;
}
@Override
public String toString() {
	return "CollectionTestBean [values=" + values + "]";
}
}

2.创建配置spring-setInject.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.xsd">
<!-- Set类型 需要<set>标签来配置注入 -->
<bean id="setBean" class="com.spring.pojo.CollectionTestBean">
<property name="values">
<set>
<value>1</value>
<value>2</value>
<value>3</value>
</set>
</property>
</bean>
</beans>

 3.创建SetInject测试类:

package com.spring.test;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring.pojo.CollectionTestBean;
public class SetInject {
	@Test
	public void setInject(){
		ApplicationContext act=new ClassPathXmlApplicationContext("spring-SetInject.xml");
		CollectionTestBean setInject=	act.getBean("setBean",CollectionTestBean.class);
	 System.out.println(setInject.toString());
	 System.out.println(setInject.getValues().size());
	}
}

 4.输出结果:

CollectionTestBean [values=[1, 2, 3]]
3

因为Collection类型是Set和List类型的基类型,所以使用<set>或<list>标签都可以进行注入,配置方式完全和以上配置方式一样,只是将测试类属性改成“Collection”类型

 

分享到:
评论

相关推荐

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

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

    spring杂谈 作者zhang KaiTao

    1. spring杂谈[原创] 1.1 Spring事务处理时自我调用的解决方案及一些实现方式的风险 1.2 我对AOP的理解 1.3 Spring开闭原则的表现-BeanPostProcessor的扩展点-1 1.4 我对IoC/DI的理解 ...1.33 Spring 注入集合类型

    spring-集合注入、自定义转换器

    关于spring-集合注入、自定义转换器的实例代码,全,可以下载学习!

    Spring实战之注入集合值操作示例

    主要介绍了Spring实战之注入集合值操作,结合实例形式分析了Spring注入集合值相关配置及使用操作技巧,需要的朋友可以参考下

    Spring.zip

    Spring注入基本值,Spring注入集合和数组,利用Spring初始化数据库连接池,Spring 表达式读取对象(Bean、数组、Map、Properties)的属性值,bean的注入方式等。

    spring 普通属性注入

    1.spring 普通属性注入 2.xml中 map集合标签与其他标签不通-- 3.用junit测试

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

    NULL 博文链接:https://fangguanhong.iteye.com/blog/1909830

    详解Java的Spring框架中bean的注入集合

    主要介绍了详解Java的Spring框架中bean的注入集合,Spring是Java的SSH三大web开发框架之一,需要的朋友可以参考下

    spring集合属性

    NULL 博文链接:https://cdxs2.iteye.com/blog/1941082

    Spring中的参数注入.pdf

    Spring中的参数注入;Spring的基本值注入,引用注入,集合注入,表达式注入

    day38 14-Spring的Bean的属性的注入:集合属性的注入

    NULL 博文链接:https://364232252.iteye.com/blog/2369771

    通过@Autowired注解注入bean的顺序,以及@bean注入.rar

    通过@Bean 和spring的factoryBean注入的bean. 以及对应@service注解注入的类 通过@Autowired 注入对象的时间是现根据类型在根据beanName获取的案例集合

    spring4示例代码

    spring-1 演示了使用setter方式及构造器方式创建bean,util:list标签创建集合,p标签简化配置 和依赖注入, 以及bean的autowire和继承与依赖,以及bean的作用域。 spring-2 演示了外部配置文件的引入(connection)...

    spring2.5学习PPT 传智博客

    07_编码剖析Spring依赖注入的原理 08_编码剖析Spring装配基本属性的原理 09_Spring如何装配各种集合类型的属性 10_使用构造器装配属性 11_用@Resource注解完成属性装配 12_编码剖析@Resource注解的实现原理 ...

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

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

    spring.doc

    1 Spring基本特征 6 2 Spring的组成 6 2.1 Spring的jar包 6 2.2 Spring配置文件 7 2.3 Spring API 8 3 Spring基本功能详解 8 3.1 SpringIOC 8 3.2别名Alias 11 别名拓展: 11 3.3 Spring容器内部对象的创建 12 ...

    Spring面试题含答案.pdf

    30. 在 Spring 中如何注入一个 java 集合? 31. 什么是 bean 装配? 32. 什么是 bean 的自动装配? 33. 解释不同方式的自动装配 34.自动装配有哪些局限性? 35. 你可以在 Spring 中注入一个 null 和一个空字符串吗?...

    Spring的学习笔记

    七、 集合注入 12 八、 自动装配autowire 13 (一) byName 13 (二) byType 14 (三) 注意 14 九、 生命周期 15 (一) lazy-init/default-lazy-init 15 (二) init-method destroy-method 不要和prototype一起用(了解) ...

    Spring相关测试1

    Spring环境搭建、Spring中Bean的配置(Bean注入的2种方式,注入细节(字面值、引用其他bean、内部bean、集合属性、util scheme 定义集合、p命名空间))

    带有外部定义集合命名空间的Spring配置文件

    该xml文件不仅仅是Spring框架初次使用时的主配置文件,而且该文件里面包含了java.util里面的List,Set,Map,Properties等的命名空间,支持在配置文件中定义外部的集合,便于参数注入的复用性

Global site tag (gtag.js) - Google Analytics