@Autowired和@Resource注解简介及区别

欣喜 Spring 发布时间:2024-01-23 09:37:17 阅读数:6287 1
下文笔者讲述Spring中@Autowired 和 @Resource注解的相关说明,如下所示

@Autowired 和 @Resource注解简介

Spring中支持@Autowired 和 @Resource注解
 的功能,实现依赖注入

@Autowired 和 @Resource注解区别

  提供方 注入方式 属性
@Autowired Spring 默认按ByType注入  
@Resource J2EE 默认按ByName注入 Name和Type

@Resource装配

1.如果同时指定了name和type
     则从Spring上下文中找到唯一匹配的bean进行装配
    找不到则抛出异常

2.如果指定了name
    则从Spring上下文中查找名称(id)匹配的bean进行装配
     找不到则抛出异常

3.如果指定了type
    则从Spring上下文中找到类型匹配的唯一bean进行装配
    找不到或找到多个
    都抛出异常

4.如果既没指定name
    也没指定type
    则自动按照byName方式进行装配
    如果没有匹配
    则回退为一个原始类型进行匹配
    如果匹配则自动装配。

注意事项: 
      当name属性一旦指定
     就只会按照名称进行装配

@Autowired装配

默认按类型装配
   默认情况下必须要求依赖对象存在
   如果要允许null值
      可设置它的required属性为false
  如果需要使用名称装配可结合
     @Qualifier注解进行使用 
总之:
    @Resource的功能相当于@Autowired
    笔者建议使用@Resource注解在字段上
      减少与Spring的耦合
版权声明

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

本文链接: https://www.Java265.com/JavaFramework/Spring/202401/7741.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

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

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者