参考下面的文章:
http://www.tuicool.com/articles/naYNVz
简单的例子,示例按byType 和 byName自动装配Bean:
package com.spring.auto.wire;
import java.util.List;
import java.util.Map;
public class Company {
private String name;
private Department department;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Department getDepartment() {
return department;
}
public void setDepartment(Department department) {
this.department = department;
}
@Override
public String toString() {
return "Company [name=" + name + ", department=" + department + "]";
}
}
package com.spring.auto.wire;
public class Department {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Department [name=" + name + "]";
}
}
package com.spring.auto.wire;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String args[]){
ApplicationContext ctx = new ClassPathXmlApplicationContext("autowire.xml");
//按名字自动装配Bean
Company company = (Company) ctx.getBean("company");
System.out.println(company);
//按类型自动装配Bean
Company company1 = (Company) ctx.getBean("company1");
System.out.println(company1);
}
}
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:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="department" class="com.spring.auto.wire.Department" p:name="WEC"></bean> <bean id="company" class="com.spring.auto.wire.Company" p:name="WG" autowire="byName" ></bean> <bean id="company1" class="com.spring.auto.wire.Company" p:name="Wc" autowire="byType" ></bean> </beans>
输出的结果
Company [name=WG, department=Department [name=WEC]]
Company [name=Wc, department=Department [name=WEC]]