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 ...
随机推荐
- comms.nottingham.ac.uk/learningtechnology
http://comms.nottingham.ac.uk/learningtechnology/
- jeecg的cq查询方式
@RequestMapping(params = "datagrid") public void datagrid(TbStudentDepEntity tbStudentD ...
- 低功耗蓝牙BLE [学习笔记]
手机设备会区分 "connecting" and "pairing" ,前者可以自动连接,后者则需要请求.BLE不再有pairing的麻烦,能直接连上目标设备, ...
- IOS常见的三种回调方法介绍
认识下三种IOS常见的回调模式. 代理模式作为IOS中最常见的通讯模式,代理几乎无处不在. 这里有一个数组,我们首先通过代理的方式将数组传递到其他方法中去. 设置协议及方法 @protocol Cal ...
- docker gitlab,redmine,etc development enviroments
sameersbn-gitlab is better more than officals sameersbn/redmine https://hub.docker.com/r/sameersbn/r ...
- 读书笔记——《图解TCP/IP》(3/4)
经典摘抄 第五章 IP协议相关技术 1.DNS可以将网址自动转换为具体的IP地址. 2.主机识别码的识别方式:为每台计算机赋以唯一的主机名,在进行网络通信时,可以直接使用主机名称而无需输入一大长串的I ...
- js解析Json字符串的方法
要把一个xml字符串转(“1,2,3,4,5,6,7,8,1,2”)换成数组的形式,每个值都应该是number类型的,想当然的就用了split方法,结果...问题来了,服务器要求数组的值是数字,而 ...
- ACCESS自动编号重新从1开始
方法一: 删掉自动编号的字段,再建一个同样的自动编号字段. 方法二: 选择工具,再选择数据库实用工具,单击压缩和修复数据库,这样就OK了. 方法三:(提示错误“无效的数据字段类型” 尝试失败) ...
- magento csv导入
- Codeforces Round #367 (Div. 2)---水题 | dp | 01字典树
A.Beru-taxi 水题:有一个人站在(sx,sy)的位置,有n辆出租车,正向这个人匀速赶来,每个出租车的位置是(xi, yi) 速度是 Vi;求人最少需要等的时间: 单间循环即可: #inclu ...