|
这篇文章来谈谈《Spring Framework 开发参考手册》的3.3.5小节中的“自动装配协作对象”和3.3.6 小节中的“依赖检查”。 仔细看看文档,相关配置见前面文章。 先建立一个包:javamxj.spring.basic.autowiring ,然后把以下4个文件放在这个包下。 · HelloBean,一个简单的Bean,含有一个属性hello。 HelloBean.java | package javamxj.spring.basic.autowiring;
public class HelloBean { private String hello;
public String getHello() { return hello; }
public void setHello(String hello) { this.hello = hello; } } |
· HelloDate类先定义了三个构造函数,然后设置了三个属性:hello、date、date2。 HelloDate.java | package javamxj.spring.basic.autowiring;
import java.util.Date; import java.util.GregorianCalendar;
public class HelloDate { public HelloDate() { System.out.println("defalt Constructor called"); }
public HelloDate(HelloBean hello) { System.out.println("HelloDate(HelloBean) called"); }
public HelloDate(HelloBean hello, Date date) { System.out.println("HelloDate(HelloBean,Date) called"); }
public void setHello(HelloBean hello) { System.out.println("Property hello set"); }
public void setDate(Date date) { System.out.println("Property date set"); }
public void setDate2(GregorianCalendar date) { System.out.println("Property date2 set"); }
} |
· beans.xml中定义了七个bean, xml version="1.0" encoding="GBK"?> DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans> <bean id="date" name="myDate" class="java.util.Date"/> <bean id="helloBean" class="javamxj.spring.basic.autowiring.HelloBean" dependency-check="simple"> <property name="hello" value="javamxj"/> bean> <bean id="HelloByName" class="javamxj.spring.basic.autowiring.HelloDate" autowire="byName"/> <bean id="HelloByType" class="javamxj.spring.basic.autowiring.HelloDate" autowire="byType"/> <bean id="HelloConstructor" class="javamxj.spring.basic.autowiring.HelloDate" autowire="constructor"/> <bean id="HelloAutodetect" class="javamxj.spring.basic.autowiring.HelloDate" autowire="autodetect"/> <bean id="helloCheck" class="javamxj.spring.basic.autowiring.HelloDate" autowire="byType" dependency-check="objects"> <property name="date2" > <bean class="java.util.GregorianCalendar"/> property> bean> beans> |