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.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"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="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.ClassPathXmlApplicationContext;
import com.importnew.TestUtil; public class TestSpring {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
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的集合对象注入属性值的更多相关文章

  1. spring练习,使用Eclipse搭建的Spring开发环境,使用set注入方式为Bean对象注入属性值并打印输出。

    相关 知识 >>> 相关 练习 >>> 实现要求: 使用Eclipse搭建的Spring开发环境,使用set注入方式为Bean对象注入属性值并打印输出.要求如下: ...

  2. Spring(八):Spring配置Bean(一)BeanFactory&ApplicationContext概述、依赖注入的方式、注入属性值细节

    在Spring的IOC容器里配置Bean 配置Bean形式:基于xml文件方式.基于注解的方式 在xml文件中通过bean节点配置bean: <?xml version="1.0&qu ...

  3. (转)Spring如何装配各种集合类型的属性

    http://blog.csdn.net/yerenyuan_pku/article/details/52858499 在前面我们已经会注入基本类型对象和其他bean,现在我们就来学习如何注入各种集合 ...

  4. spring读取classpath目录下的配置文件通过表达式去注入属性值.txt

    spring读取配置文件: 1. spring加载配置文件: <context:property-placeholder location="classpath:config/syst ...

  5. 【java】【反射】反射实现判断发生了修改操作,判断两个对象是否发生属性值的变更,判断两个List集合内对象的属性值是否发生变更

    java的反射实现: 判断发生了修改操作,判断两个对象是否发生属性值的变更,判断两个List集合内对象的属性值是否发生变更 今日份代码: package com.sxd.streamTest; imp ...

  6. JQuery 操作对象的属性值

    通过JQuery去操作前台对象(div,span...)的属性是很常见的事情,本文就简单的介绍几种操作情形. 1):通过属性值去获取对象 2):用JQuery去修改对象的属性值 3):获取并修改对象的 ...

  7. jquery attr()方法 添加,修改,获取对象的属性值。

    jquery attr()方法 添加,修改,获取对象的属性值. jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到 ...

  8. 读匿名object对象的属性值

    读匿名object对象的属性值 1.定义读object对象值的功能方法 public static class StaticClass { public static string ValueByKe ...

  9. WPFS数据绑定(要是后台类对象的属性值发生改变,通知在“client界面与之绑定的控件值”也发生改变须要实现INotitypropertyChanged接口)

    WPFS数据绑定(要是后台类对象的属性值发生改变,通知在"client界面与之绑定的控件值"也发生改变须要实现INotitypropertyChanged接口) MainWindo ...

随机推荐

  1. python自动化测试框架(一)

    1.开发环境 名称 版本 系统 windows 7 python版本 2.7.14 IDE pycharm2017 2.大致框架流程 :展示了框架实现的业务流程 3.框架介绍 3.1 ======完善 ...

  2. Ajax——跨域访问

    同源 基本概念:同源策略是浏览器的一种安全策略,所谓同源是指,域名,协议,端口完全相同. //同一域名下,允许通讯 http://www.a.com/a.js http://www.a.com/b.j ...

  3. php判断form数据是否为POST而来,判断数据提交方式

    //判断form数据是否为POST而来,判断数据提交方式 if ($_SERVER['REQUEST_METHOD'] != 'POST') { // 非 POST 来路,做警告或你想做的事 retu ...

  4. Python语言之函数

    1.函数的定义与调用 def function(x): print("function(%s)"%x) function("hello") #call the ...

  5. chrome浏览器 快捷键设置

    如何设置谷歌浏览器在新窗口中打开链接?如何设置谷歌浏览器在新标签页中打开链接?一.快捷键方式: 1.左键单击 ==> 在当前窗口中打开目标网页. 2.Shift + 左键单击 ==> 在新 ...

  6. iic通讯 FPGA实现 mpu6050为例

    IIC最常用的通讯协议,但普遍用于单片机.arm这些,用FPGA实现大材小用,但对于菜鸡水平练练手很不错,考验串并转换和时序的控制.今天我就以mpu6050陀螺仪为例,实现FPGA的iic通信. 1. ...

  7. How To:使用dmidecode获取机器序列号(Serial number)

    使用dmidecode可以获取关于机器的诸多信息,比如机器的序列号   [root@dc1db01 ~]# dmidecode -s system-serial-number   processor的 ...

  8. POJ1161——The Suspects

    POJ1161——The Suspects   The Suspects Time Limit: 1000MS   Memory Limit: 20000K Total Submissions: 48 ...

  9. Django settings.py的一些配置

    官方文档:settings配置 静态文件配置链接 # 语言改为中文: LANGUAGE_CODE = "zh-hans" # 时区由UTC改为Asia/Shanghai,这样有关时 ...

  10. C#学习笔记_10_设计模式&继承&多态

    10_设计模式&继承&多态 设计模式 由前人总结的用来解决特定问题的解决方案 单例模式 在一个项目的不同模块中获取对象,获取到的是同一个对象 代码 继承 概念:如果多个类中具有相同的字 ...