Spring中@Autowired和@Resource注解的区别
时间: 2024-06-02 18:10:38 浏览: 119
Spring注解注入属性
@Autowired和@Resource都是用来进行依赖注入的注解,但是它们有以下区别:
1. @Autowired是Spring提供的注解,而@Resource是JavaEE提供的注解,因此使用@Autowired需要引入Spring的依赖。
2. @Autowired默认按类型装配,如果有多个同类型的Bean,则需要通过@Qualifier注解指定具体的Bean。而@Resource默认按照名称装配,如果没有指定name属性,则默认使用属性名作为Bean的名称。
3. @Autowired可以注入任何Spring管理的Bean,包括自定义的Bean。而@Resource只能注入JavaEE容器中管理的Bean,例如DataSource、SessionContext等。
4. @Autowired可以用在构造器、方法、属性上,而@Resource只能用在属性上。
综上,如果项目中使用了Spring框架,则建议使用@Autowired注解进行依赖注入。
阅读全文