Autowired 和 Resource 的区别

3 阅读1分钟

@Autowired:来自Spring ,默认按“类型”注入
@Resource:Java 标准注解,默认按“名字”注入

Autowired-> 按类型

@Autowired
private UserService userService;

Spring 会找:容器里 类型是 UserService 的 Bean

如果有多个同类型的Bean就会报错,这时必须配合:

@Qualifier("userServiceImpl1")
@Autowired
private UserService userService;

@Resource -> 按名称

@Resource
private UserService userService;

Spring 会:

  1. 先按 变量名 userService 找 Bean
  2. 找不到 → 再按 类型