今天在调试代码,发现IDEA提示@Autowired为警告(如上图所示),信息为:Field injection is not recommended。什么意思,Spring官方给的说法是:不再推荐使用字段注入。这是为啥?字段注入是我们平时工作中经常使用到的注入,一是简单,二是代码简洁,咋就不推荐了呢?下面我们来一探究竟====>>
spring 4.0开始不推荐使用属性注入,改为推荐构造器注入和setter注入。
思考:为什么不推荐使用,这种方式是不是有更好的替代方案。
Spring框架的核心功能之一就是使用依赖注入的方式来管理Bean之间的依赖关系。
spring framerwork 5.1.3
的文档只定义了两种主要的依赖注入类型,但实际上有三种;:
- 基于字段注入
- 基于构造器注入
- 基于set方法注入
基于字段的依赖注入方式会在IDEA当中吃到黄牌警告,但是这种使用方式使用的也最广泛,因为简洁方便。
public class TestContr