Spring注解-AutoWired-自动装配详解

自动装配的规则–AutoWired

注解自动装配-AutoWired :

  1. 首先使用自动装配属性类型进行自动装配(ByType)
    – 若没有bean的全限定类名(class)与此属性类型匹配,报错
    – 若有且仅有一个bean的全限定类名与此属性类型匹配,自动装配
    – 若有多个bean的全限定类名与此属性类型匹配,转2
     
  2. 当容器中有多个匹配属性类型的bean时,使用id匹配属性的名字!(ByName)
    – 当有bean的id属性名匹配时,自动装配
    – 当没有bean的id和属性名匹配时,报错
     
  3. 如果指定了@Qualifier(value=“xxx”),就会寻找类型匹配,并且id=xxx的
    – 只要不满足类型匹配、id=xxx中的一条就会报错!!
     
  4. @Autowired(required = false)
    – required 默认为True,不可赋null值。设置为False后可以赋null值。
     
  5. 经测试Resource标签和Autowired标签基本是相同的
    – 都是先根据Type判断是否有唯一匹配Bean,有就自动装配。一个匹配Type都没有直接报错!(即使有匹配的name,也要求必须Type匹配!)
    – 多个匹配会在根据ID进行查找唯一匹配类型。
    – 指定了name的Resource,和指定了Qualifier的Autowired一样,只有Type和Name都匹配才会装配成功,否则报错!!
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值