06-spring学习-自动装配

本文详细介绍了自动装配的概念及其在Spring框架中的应用方式,包括按类型自动装配(autowire bytype)、优先级设置(primary:true)及自动退出机制(autowire-candidate=false)。此外还探讨了如何通过构造方法进行自动装配。

自动装配前面也有写过。这里只做补充

在之前,对于要引用的属性,都必须写上名称,

原始配置:

  当要在emp对象里面引用dept对象的时候,需要明确的使用“ref“属性去找到指定的名称,但是这种操作中也可以使用类型的

自动装配。

实现自动装配:

autowire:bytype

此时的装配过程没有明确写上要引用的是dept的配置,但是却可以通过autowire自动的根据类型查找到所需要的bean的对象,并且应用。

 

但是这样的操作也有问题:因为是按照类型的关系引用,如果现在出现了两个同类型的操作呢?

观察如下:

以上的deptA和deptB两个bean的类型都是Dept。

执行就会报错:

以上的代码根本不可能实现自动实现匹配操作。所以需要有人推荐。

 

设置推荐选择primary:true

 

比如:上面推荐使用deptB这个bean的实例。就可以加上primary=true。

 

自动退出:autowire-candidate=”false”

意味着:如果在类型匹配过程中,不会再去考虑此bean的情况。

 

除了以上的操作,利用了setter进行了自动装配,也可以利用构造方法进行自动装配。

观察构造方法的配置:

配置如下:

这种自动的配置模式比较麻烦,如果可以,尽量明确的引用一个名称更加合理。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值