为什么 Spring和IDEA 都不推荐使用 @Autowired 注解

本文探讨了Spring框架中不推荐使用@Autowired注解的原因,包括IDEA发出警告的背景、Spring团队建议使用构造注入的考量、属性注入可能导致的问题以及解决方案。文章还对比了@Autowired、@Qualifier和@Resource的区别,并推荐在需要属性注入时使用@Resource以避免潜在的装配失败。
摘要由CSDN通过智能技术生成

为什么都不推荐使用 @Autowired 注解


前言

请看下面几个问题

  1. Spring为什么不推荐使用@Autowired 注解
  2. 为什么推荐使用@Resource 代替 @Autowired 注解
  3. 如何快速使用构造注入代替 @Autowired
  4. @Autowired, @Qualifier, @Resource, 三者有何区别

下面, 我们带着以上问题去梳理和学习, 体会知识之间的关联性


Spring为什么不推荐使用@Autowired 注解

背景

  1. 做开发的同学可能都会发现, idea 在我们经常使用的@Autowired 注解上添加了警告
    警告内容是: Field injection is not recommended, 译为: 不推荐使用属性注入
    在这里插入图片描述

  2. 我们点击右侧三个小点查看描述, 可以看到信息如下图
    在这里插入图片描述
    原因详情描述: Inspection info: Spring Team recommends: "Always use constructor based dependency injection in your beans. Always use assertions for mandatory dependencies".
    译为:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值