首页 > 其他 > 详细

@Autowired和@Resource的异同

时间:2021-03-11 10:22:07      阅读:35      评论:0      收藏:0      [点我收藏+]

@Autowired和@Resource的异同

一、相同点

  @Autowired与@Resource都可以用来装配bean, 都可以写在字段或setter方法上。

二、不同点

  1、@Autowired 根据类型注入, @Resource 默认根据名字注入,其次按照类型搜索。

  2、@Autowired默认是按照byType进行装配的,所以默认情况下是必须依赖的对象存在,如果要允许为空,可以设置它的required属性为false,如果想使用byName进行装配,可以结合@Qualifier注解进行使用。

  @Autowired

  @Qualifier("bean的名字") 

按名称装配Bean,与@Autowired组合使用,解决按类型匹配找到多个Bean问题。

  3、@Resource(name="beanName") 指定被注入的bean的名称,要是未指定name属性, 默认使用成员属性的变量名,一般不用写name属性。@Resource(name="beanName")指定了name属性,按名称注入但没找到bean, 就不会再按类型装配了。

  @Resource(name="beanName")

 

@Autowired和@Resource的异同

原文:https://www.cnblogs.com/nick-wgh/p/14515283.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!