spring学习10:Bean的自动装配
-
自动装配:
-
自动装配是Spring满足Bean依赖的一种方式;
-
Spring会在上下文中自动寻找,并自动给bean装配属性;
-
-
Spring有3种装配方式:
-
在XML中显示的配置;
-
在Java中显示配置;
-
隐式的自动装配bean【重要】;
-
-
环境搭建:XML显式配置
-
一个人有2个宠物;
-
xml配置文件
-
pojo类:Person ,Cat ,Dog
public class Person {
private Cat cat;
private Dog dog;
private String name;
public Cat getCat() {
return cat;
}
public void setCat(Cat cat) {
this.cat = cat;
}
public Dog getDog() {
return dog;
}
public void setDog(Dog dog) {
this.dog = dog;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
-
测试类:
public class MyTest {
-
-
隐式的自动装配bean【重要】:
-
ByName自动装配;
-
ByType自动装配;
-
-
ByName自动装配:autowire="byName"
-
byName:会自动在容器上下文中查找,和自己对象set方法后面的值对应的beanId;
-
xml配置文件:autowire="byName"
-
-
ByType自动装配:autowire="byType"
-
byType:会自动在容器上下文中查找,和自己对象属性类型相同的beanId;
-
用byType时需注意:
-
类型必须全局唯一
-
对应的bean中,id可以省略
-
-
-
总结:
-
byName方式,需要保证所有bean的id唯一,并且这个bean需要和自动注入的属性的set方法的值一致;
-
byType方式,需要保证所有的bean的class唯一,并且这个bean需要和自动注入的属性的类型一致;
-

浙公网安备 33010602011771号