装配bean——集合类型注入值:
本文介绍数组、list集合、set集合、map集合、properties的注值
源码地址:http://download.csdn.net/detail/tingzhiyi/9593835
1、基本信息
包名:com.beans.collection,包下3个类+beans.xml:类一:Department.java (基本类,定义一些变量)类二:Employee.java (员工类)类三:App1.java (测试类)beans.xml (配置文件)2、公共代码:Department.java中代码:
public class Department { private String name;//表示雇员名字 private String [] empName;//数组注值 public int[] number;//数组注值,表示雇员工资 private Listemplist;//list集合注值 private Set empsets;//set集合注值 private Map empmaps;//map集合注值 private Properties pp; //properties的注值 //各个变量的set/get方法,省略... }
Employee.java中代码:
public class Employee { private String name; private int id; 各个变量的set/get方法,省略... }
3、数组注值
beans.xml中代码:
小明 大明 老明
5900 8800 6300
App1.java中代码(显示结果):
4、List注值
beans.xml中代码:
App1.java中代码(显示结果):
public static void main(String[] args) { ApplicationContext ac=new ClassPathXmlApplicationContext("com/beans/collection/beans.xml"); Department dm=(Department)ac.getBean("department"); System.out.println(dm.getName());//获取部门名称 System.out.println("\n"+"*****通过List集合取出数据*****"); for(Employee emps:dm.getEmplist()) { System.out.print("name="+emps.getName()+" "); } }
5、set注值beans.xml中代码:
App1.java中代码(显示结果):
6、Map注值beans.xml中代码:
App1.java中代码(显示结果):
这里取出数据有两种方法:1、使用迭代器;2、使用简洁方法public static void main(String[] args) { ApplicationContext ac=new ClassPathXmlApplicationContext("com/beans/collection/beans.xml"); Department dm=(Department)ac.getBean("department"); System.out.println(dm.getName());//获取部门名称 //1、使用迭代器 System.out.println("\n"+"*****通过Map集合取出数据(迭代器方法取出)*****"); Mapempmaps=dm.getEmpmaps(); Iterator ite=empmaps.keySet().iterator(); while(ite.hasNext()) { String key=(String) ite.next(); Employee emp=empmaps.get(key); System.out.println("key="+key+" "+emp.getName()); } //2、使用简洁方法 System.out.println("\n"+"*****通过Map集合取出数据(简洁方法取出)*****"); for(Entry entry1:dm.getEmpmaps().entrySet()) { System.out.println("key="+entry1.getKey()+" "+entry1.getValue().getName()+" "); } }
7、properties注值beans.xml中代码:
abcd hello 你好
App1.java中代码(显示结果):
这里取出数据有两种方法:1、使用properties取出数据;2、使用Enumeration取出数据
public static void main(String[] args) { ApplicationContext ac=new ClassPathXmlApplicationContext("com/beans/collection/beans.xml"); Department dm=(Department)ac.getBean("department"); System.out.println(dm.getName());//获取部门名称 //通过properties取出数据 System.out.println("*****通过properties取出数据*****"); Properties pp=dm.getPp(); //System.out.println(pp.get("pp1").toString()); for(Entry