@AutoWired和@Resource区别

@AutoWired 的规则说明(先类型再名字):
1) 在 IOC 容器中查找待装配的组件的类型,如果有唯一的 bean 匹配,则使用该 bean 装配
2) 如待装配的类型对应的 bean 在 IOC 容器中有多个,则使用待装配的属性的属性名作为 id 值进行查找, 找到就装配,找不到就抛异常
@Resource 的规则说明(先名字再类型):
1) @Resource 有两个属性是比较重要的,分是 name 和 type,
Spring 将@Resource 注解的name 属性解析为 bean 的名字,而 type 属性则解析为 bean 的类型
所以如果使用 name 属性,则使用 byName 的自动注入策略,而使用 type 属性时则使用 byType 自动注入策略
2) 如果@Resource 没有指定 name 和 type ,则先使用byName注入策略, 如果匹配不上,再使用 byType 策略, 如果都不成功,就会报错
posted @ 2022-07-18 22:33  紫英626  阅读(25)  评论(0)    收藏  举报

紫英