@Autowired和@Resource有什么区别?
时间: 2024-06-17 11:03:16 浏览: 179
1.@Resource是按名称进行注入的,属于java自带的。@Autowired是按类型进行注入的,属于Spring。.pdf
@Autowired和@Resource都是用于依赖注入的注解,但它们有以下几点区别:
1. 来源不同:@Autowired是Spring自带的注解,而@Resource是JSR-250规范定义的注解,由JavaEE提供。
2. 自动装配方式不同:@Autowired默认按照类型进行自动装配,如果有多个类型相同的Bean,则可以通过@Qualifier注解指定Bean的名称。而@Resource默认按照名称进行自动装配,如果没有指定名称,则默认使用属性名称作为Bean的名称。
3. 支持类型不同:@Autowired可以注入任何类型的Bean,包括基本类型和String类型等。而@Resource只能注入Bean类型。
4. 适用范围不同:@Autowired适用于Spring框架中,而@Resource是JavaEE规范中的注解,在JavaEE环境中也可以使用。
阅读全文