bean中集合属性的配置
在实际的开发中,有的bean中会有集合属性,如下:
package com.sevenhu.domain; import java.util.List; /**
* Created by hu on 2016/3/31.
*/
public class RichMen {
private List<Car> cars; public void setCars(List<Car> cars) {
this.cars = cars;
}
}
那么集合属性的配置如下:
<bean id="richMan1" class="com.sevenhu.domain.RichMen">
<property name="cars">
<!--使用list集合来装配集合属性-->
<list>
<ref bean="car1"/>
<ref bean="car2"/>
</list>
</property>
</bean>
或还可以如下配置,将集合属性在外部配置,可以实现共享,如下:
<!--声明集合类型的bean-->
<util:list id="cars">
<ref bean="car1"/>
<ref bean="car2"/>
</util:list>
<bean id="richMan2" class="com.sevenhu.domain.RichMen">
<property name="cars" ref="cars"></property>
</bean>
那么Map类型的集合属性的配置过程如下,首先,建立一个含有Map类型集合属性的bean类:
package com.sevenhu.domain; import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; import java.util.Iterator;
import java.util.Map;
import java.util.Set; /**
* Created by hu on 2016/3/31.
*/
public class MapPropertyTest {
private Map nameAndAge; public void setNameAndAge(Map nameAndAge) {
this.nameAndAge = nameAndAge;
}
@Override
public String toString(){
String str="";
String tempStr="";
Set<Map.Entry> entrySet=nameAndAge.entrySet();
Iterator<Map.Entry> iterator=entrySet.iterator();
while (iterator.hasNext()){
Map.Entry entry=iterator.next();
tempStr= entry.getKey()+":"+entry.getValue();
str=str+tempStr+"\n";
}
return str;
}
public static void main(String[] args){
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("beans.xml");
MapPropertyTest mapPropertyTest= (MapPropertyTest) applicationContext.getBean("mapPropertyTest");
System.out.println(mapPropertyTest);
}
}
然后配置代码如下:
<!--Map类型的集合属性-->
<bean id="mapPropertyTest" class="com.sevenhu.domain.MapPropertyTest">
<property name="nameAndAge">
<map>
<entry>
<key>
<value>hujingwei</value>
</key>
<value>23</value>
</entry>
</map>
</property>
</bean>
bean中集合属性的配置的更多相关文章
- 【转载】Spring bean 中 constructor-arg属性
转载地址:https://blog.csdn.net/qq_27292113/article/details/78063696 方便以后查阅
- 【Spring源码解读】bean标签中的属性(二)你可能还不够了解的 abstract 属性和 parent 属性
abstract 属性说明 abstract 在java的语义里是代表抽象的意思,用来说明被修饰的类是抽象类.在Spring中bean标签里的 abstract 的含义其实也差不多,表示当前bean是 ...
- Spring学习--集合属性
Spring 中可以通过一组内置的 xml 标签(例如: <list> , <set> 或 <map>) 来配置集合属性. 配置java.util.Set 需要使用 ...
- Spring中配置文件applicationContext.xml配置详解
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- 记录使用Hibernate查询bean中字段和数据库列类型不匹配问题
今天在工程中遇到Hibernate查询的时候,bean中的字段和数据库中的字段不符合(bean中有pageTime字段,但是数据库中没有此列)报错问题. 具体问题环境: 在auto_off表中,off ...
- [原创]java WEB学习笔记98:Spring学习---Spring Bean配置及相关细节:如何在配置bean,Spring容器(BeanFactory,ApplicationContext),如何获取bean,属性赋值(属性注入,构造器注入),配置bean细节(字面值,包含特殊字符,引用bean,null值,集合属性list map propert),util 和p 命名空间
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- @Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationException 异常。
@Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationEx ...
- Spring配置Bean,为属性赋值
SayHello的实体类: package com.langchao; /** * @ClassName: SayHello * @description: * @author: ZhangYawei ...
- SpringXML方式配置bean的集合注入:list,map,properties
新建一个bean,设置相应的集合属性 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 public class Collecti ...
随机推荐
- pro8
1.本次课学到的知识点 函数程序设计 结构化程序设计思想 程序解析 局部变量和全局变量 2.实验过程中遇到的问题及解决方法 实验过程中会遇到自定义函数的逻辑错误 与缺少定义变量 从主函数开始理清函数关 ...
- C++线程池的实现(二)
参考文章:http://blog.csdn.net/huyiyang2010/archive/2010/08/10/5801597.aspx // CThread.h #ifndef __MY_THR ...
- angularJS商品购物车案例
<!DOCTYPE html> <html ng-app="shopping"> <head lang="en"> < ...
- express 查看版本号
新安装了express,但是当查看版本号输入: express -v 时出现如下错误: 网上查找了相关资料才发现express查看版本 的命令是 express -V (即V大写) 再次尝试: 发现同 ...
- 1046 A^B Mod C
1046 A^B Mod C 基准时间限制:1 秒 空间限制:131072 KB 给出3个正整数A B C,求A^B Mod C. 例如,3 5 8,3^5 Mod 8 = 3. Input 3个正整 ...
- iOS 获取当前时间 年、月、日、周几
NSDate * nowDate = [NSDate new]; NSCalendar *calendar = [NSCalendar currentCalendar]; NSUInteger uni ...
- JS的基础类型与引用类型
两种类型: ECMAScript变量包含两种不同类型的值:基本类型值.引用类型值: 基本类型值:指的是保存在栈内存中的简单数据段: 引用类型值:指的是那些保存在堆内存中的对象,意思是,变量中保存的实际 ...
- JAVA并发编程的艺术目录
第7章:JAVA中的13个原子操作类 第8章:JAVA中的并发工具类 第9章:JAVA中的线程池
- iOS 的 XMPPFramework 简介
XMPPFramework是一个OS X/iOS平台的开源项目,使用Objective-C实现了XMPP协议(RFC-3920),同时还提供了用于读写XML的工具,大大简化了基于XMPP的通信应用的开 ...
- iOS:app直播---原理篇
[如何快速的开发一个完整的iOS直播app](原理篇) 转载自简书@袁峥Seemygo:http://www.jianshu.com/p/7b2f1df74420 一.个人见解(直播难与易) 直播 ...