您的位置:首页 > 编程语言 > Java开发

Spring基本知识——入门3

2013-03-31 22:11 260 查看
<property>属性用于setter方法注入,为减少配置代码,可用自动注入来简化装配。

public class Master {
private String name;
private Dog dog;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Dog getDog() {
return dog;
}
public void setDog(Dog dog) {
this.dog = dog;
}
}


public class Dog {

private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
XML配置:

<!-- 配置一个master对象 当配置为byName时,需要容器配置一个id为dog的bean(Master类中属性为dog),
当配置为byType时,需要容器配置一个id名称随便,只要class是Dog的对象即可的bean
当配置为byType时,存在n个Dog类的bean时,符合byName的bean会被注入
-->
<bean id="master" class="com.hsp.autowire.Master" autowire="byName">
<property name="name">
<value>顺平</value>
</property>
<!-- <property name="dog" ref="dog11"></property> -->
</bean>
<!-- 配置dog对象 -->
<bean id="dog2"  class="com.hsp.autowire.Dog" >
<property name="name" value="小黄"/>
<property name="age" value="3"/>
</bean>
<bean id="dog"  class="com.hsp.autowire.Dog" >
<property name="name" value="小白"/>
<property name="age" value="4"/>
</bean>
测试:

Master us = (Master)app.getBean("master");
System.out.println("feng:    "+us.getName()+"    "+us.getDog().getName());
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: