@Autowired与@Resource的区别
1.Autowired注解
- 1.优先按照类型注入,如果仅仅找到一个对应的类型那么就会直接注入
- 2.按照类型注入,如果找到多个,就会按照属性名称去找,找不到就会报错
- 3.配合@Qualifer("带注入Bean的名称")可以实现按照名称注入
- 4.找到多个相同类型的时候,如果有的Bean定义时添加@Primary注解,就会优先注入被@Primary注解修饰的那一个bean
- 5.在使用@Primary注解的时候同时使用@Qualifer注解的时候,依然是@Qualifer注解中的名字注入
- 6.Autowired会按照先类型,后属性名称的方式注入
2.Resource
- 1.优先按照@Resource(name = "需要注入的bean名称"),中name属性的值注入
- 2.如果name属性中的bean找不到,就会按照属性的名称进行注入
- 3.如果按照属性的名称也找不到的话啊,就会按照类型注入
- 4.按照类型如果找到一个,就会直接注入,找到多个就会报错
- 5.@Resource注解不会受到@Primary注解的影响
努力奔跑,是为了追上曾经被寄予厚望的自己。