码迷,mamicode.com
首页 > 其他好文 > 详细

Autowired和Resource的区别.

时间:2020-04-10 15:57:43      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:找不到   edr   默认   auto   ali   als   null   类型   注解   

Autowired和Resource的区别.

标签(空格分隔): Spring


@Resource 默认按照名称来装配注入, 只有当找不到与匹配的bean才会按照类型来装配注入.

  1. 如果同时指定了name和type, 则从Spring上下文忠找到唯一匹配的bean进行装配, 找不到则抛出异常.
  2. 如果指定了name, 则从上下文中查找名称匹配的bean进行装配, 找不到则抛出异常.
  3. 如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配, 找不到或者找到多个都会异常报错.
  4. 如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配.

@Autowired默认按类型装配(这个注解是属于spring的),默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,如:@Autowired(required=false) ,如果我们想使用名称装配可以结合@Qualifier注解进行使用

Autowired和Resource的区别.

标签:找不到   edr   默认   auto   ali   als   null   类型   注解   

原文地址:https://www.cnblogs.com/A-FM/p/12673934.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!