spring自动装配Bean

参考下面的文章:

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]]

猜你喜欢

转载自jarvi.iteye.com/blog/2266800