@Autowired和@Resource注解区别

书欣 Spring 发布时间:2022-09-03 22:32:13 阅读数:18590 1 Spring全家桶面试题(2023优化版
下文笔者将讲述spring开发中@Autowired和@Resource注解区别,如下所示

autowired和resource简介

 
@Autowired是Spring中的注解
    import org.springframework.beans.factory.annotation.Autowired;

@Resource是java提供的注解
    import javax.annotation.Resource;
    都可以实现自动装配

@Autowired和@Resource注解两者区别

@Autowired:
    会先按byType去找
     当没找到,则会按照byName去找
@Resource会先按byName去找
     当没找到则会byType去找
     当设置name属性,则只会按byName去找,找不到就报错
例:
@Resource(name = "userServiceImpl")
    private StudentService studentService;

Autowired、Resource使用场景

Autowired
   效率低下,先按类型查找,再按名字查找

Resource
   按名字查找,后面要跟参数name
   好处:当有多个Impl实现类时,可以通name快速找到
  
当只有一个Impl实类的时候,两者使用差不多
>=2的时候,最好用@Resource,比@Autowired@Qualifier()效率高
@Autowired:先byType再byName
@Resource:先byName再byType(当指定@Resource name属性时,只会byName)
效率上Resource更高。
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaFramework/Spring/202209/4325.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者