Spring和IDEA不推荐@Autowired的原因是什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计859个文字,预计阅读时间需要4分钟。
在IDEA开发时,若在字段上使用Spring的依赖注入注解`@Autowired`后,会出现如下警告:+Field injection is not recommended(字段注入是不推荐的)。尽管如此,仍可以使用`@Autowired`。
大家在使用IDEA开发的时候有没有注意到过一个提示,在字段上使用Spring的依赖注入注解@Autowired后会出现如下警告
Field injection is not recommended (字段注入是不被推荐的)
但是使用@Resource却不会出现此提示
网上文章大部分都是介绍两者的区别,没有提到为什么,当时想了好久想出了可能的原因,今天来总结一下
Spring常见的DI方式
- 构造器注入:利用构造方法的参数注入依赖
- Setter注入:调用Setter的方法注入依赖
- 字段注入:在字段上使用@Autowired/Resource注解
@Autowired VS @Resource
事实上,他们的基本功能都是通过注解实现依赖注入,只不过@Autowired是Spring定义的,而@Resource是JSR-250定义的。
本文共计859个文字,预计阅读时间需要4分钟。
在IDEA开发时,若在字段上使用Spring的依赖注入注解`@Autowired`后,会出现如下警告:+Field injection is not recommended(字段注入是不推荐的)。尽管如此,仍可以使用`@Autowired`。
大家在使用IDEA开发的时候有没有注意到过一个提示,在字段上使用Spring的依赖注入注解@Autowired后会出现如下警告
Field injection is not recommended (字段注入是不被推荐的)
但是使用@Resource却不会出现此提示
网上文章大部分都是介绍两者的区别,没有提到为什么,当时想了好久想出了可能的原因,今天来总结一下
Spring常见的DI方式
- 构造器注入:利用构造方法的参数注入依赖
- Setter注入:调用Setter的方法注入依赖
- 字段注入:在字段上使用@Autowired/Resource注解
@Autowired VS @Resource
事实上,他们的基本功能都是通过注解实现依赖注入,只不过@Autowired是Spring定义的,而@Resource是JSR-250定义的。

