|
標簽:spring中使用mapsetlist數(shù) spring注入 mapsetlist數(shù)組屬性集合的注入方 spring配置文件
(1)下邊的一個java類包含了所有Map、Set、List、數(shù)組、屬性集合等這些容器,主要用于演示Spring的注入配置; package com.lc.collection;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
public class Department {
private String name;
private String [] empName;//數(shù)組
private List<Employee> empList;//list集合
private Set<Employee> empsets;//set集合
private Map<String,Employee> empMaps;//map集合
private Properties pp;//Properties的使用
public Set<Employee> getEmpsets() {
return empsets;
}
public void setEmpsets(Set<Employee> empsets) {
this.empsets = empsets;
}
public String[] getEmpName() {
return empName;
}
public void setEmpName(String[] empName) {
this.empName = empName;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<Employee> getEmpList() {
return empList;
}
public void setEmpList(List<Employee> empList) {
this.empList = empList;
}
public Map<String, Employee> getEmpMaps() {
return empMaps;
}
public void setEmpMaps(Map<String, Employee> empMaps) {
this.empMaps = empMaps;
}
public Properties getPp() {
return pp;
}
public void setPp(Properties pp) {
this.pp = pp;
}
}
(2)Spring配置文件beans.xml文件 <?xml version="1.0" encoding="utf-8"?> <beans xmlns="http://www./schema/beans" xmlns:xsi="http://www./2001/XMLSchema-instance" xmlns:context="http://www./schema/context" xmlns:tx="http://www./schema/tx" xsi:schemaLocation="http://www./schema/beans http://www./schema/beans/spring-beans-2.5.xsd http://www./schema/context http://www./schema/context/spring-context-2.5.xsd http://www./schema/tx http://www./schema/tx/spring-tx-2.5.xsd"> <bean id="department" class="com.hsp.collection.Department"> <property name="name" value="財務(wù)部"/> <!-- 給數(shù)組注入值 --> <property name="empName"> <list> <value>小明</value> <value>小明小明</value> <value>小明小明小明小明</value> </list> </property> <!-- 給list注入值 list 中可以有相當?shù)膶ο?--> <property name="empList"> <list> <ref bean="emp2" /> <ref bean="emp1"/> <ref bean="emp1"/> <ref bean="emp1"/> <ref bean="emp1"/> <ref bean="emp1"/> <ref bean="emp1"/> </list> </property> <!-- 給set注入值 set不能有相同的對象 --> <property name="empsets"> <set> <ref bean="emp1" /> <ref bean="emp2"/> <ref bean="emp2"/> <ref bean="emp2"/> <ref bean="emp2"/> </set> </property> <!-- 給map注入值 map只有key不一樣,就可以裝配value --> <property name="empMaps"> <map> <entry key="11" value-ref="emp1" /> <entry key="22" value-ref="emp2"/> <entry key="22" value-ref="emp1"/> </map> </property> <!-- 給屬性集合配置 --> <property name="pp"> <props> <prop key="pp1">abcd</prop> <prop key="pp2">hello</prop> </props> </property> </bean> <bean id="emp1" class="com.hsp.collection.Employee"> <property name="name" value="北京"/> <property name="id" value="1"/> </bean> <bean id="emp2" class="com.hsp.collection.Employee"> <property name="name" value="天津"/> <property name="id" value="2"/> </bean> </beans>
(3)如何使用 package com.lc.collection;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import java.util.Map.Entry;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class App1 {
public static void main(String[] args) {
ApplicationContext ac=new ClassPathXmlApplicationContext("com/lc/collection/beans.xml");
Department department=(Department) ac.getBean("department");
System.out.println(department.getName());
for(String emName:department.getEmpName()){
System.out.println(emName);
}
/*
* 通過list集合取出數(shù)據(jù)
*/
System.out.println("**********通過list集合取出數(shù)據(jù)*****");
for(Employee e : department.getEmpList()){
System.out.println("name="+e.getName()+" "+e.getId());
}
/*
* 通過set集合取出數(shù)據(jù)
*/
System.out.println("**********通過set集合取出數(shù)據(jù)*****");
for(Employee e : department.getEmpsets()){
System.out.println("name="+e.getName());
}
/*
* 通過map集合取出數(shù)據(jù) 迭代器
*/
System.out.println("*******通過map集合取出數(shù)據(jù) 迭代器****");
//1.迭代器
Map<String,Employee> empmaps=department.getEmpMaps();
Iterator it=empmaps.keySet().iterator();
while(it.hasNext()){
String key=(String) it.next();
Employee emp=empmaps.get(key);
System.out.println("key="+key+" "+emp.getName());
}
System.out.println("*******通過map集合取出數(shù)據(jù) 簡潔方法****");
//2.簡潔方法
for(Entry<String,Employee> entry1:department.getEmpMaps().entrySet()){
System.out.println(entry1.getKey()+" "+entry1.getValue().getName());
}
System.out.println("*****通過Propertis取出數(shù)據(jù)*****");
Properties pp=department.getPp();
for(Entry<Object,Object> entry:pp.entrySet()){
System.out.println(entry.getKey().toString()+" "+entry.getValue().toString());
}
System.out.println("*****通過Enumeration取出*****");
Enumeration en= pp.keys();
while(en.hasMoreElements()){
String key=(String) en.nextElement();
System.out.println(key+" "+pp.getProperty(key));
}
}
}
(4)以后那些不知道的粘貼拷貝即可
注:轉(zhuǎn)載請注明出處!
Spring中使用Map、Set、List、數(shù)組、屬性集合的注入方法配置文件 標簽:spring中使用mapsetlist數(shù) spring注入 mapsetlist數(shù)組屬性集合的注入方 spring配置文件 原文:http://blog.csdn.net/xlgen157387/article/details/40349929 |
|
|