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需要和自动注入的属性的类型一致;
-
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律