当前位置: 首页 > 图灵资讯 > java面试题> Autowired 和 Resource 的区别

Autowired 和 Resource 的区别

来源:图灵教育
时间:2024-02-02 10:17:39
 

@Autowired和@Resource都是用于依赖注入的注解,用于将其他组件或资源自动注入到目标对象中。它们在使用方式和功能上有一些区别:

  1. @Autowired:
  • Spring框架的注解,基于类型进行依赖注入。
  • 默认按照类型进行匹配注入,如果存在多个匹配类型的bean,则根据属性名称进行匹配。
  • 可以用于构造器、字段、方法或者参数上。
  • 支持通过@Qualifier注解指定具体的Bean名称进行注入。
  1. @Resource:
  • 是Java EE规范中定义的注解,在Java 6及以上版本中可用。
  • 基于名称进行依赖注入,先按照名称查找,再按照类型匹配。
  • 默认按照属性名称进行查找,也可以通过name属性指定具体的Bean名称进行注入。
  • 只能用于字段、setter方法或者参数上。