1.各类注解
1.1 @Autowired和@Resource
1.1.1@Resource:
有两个属性是比较重要的,分是name和type;name属性解析为bean的名字,而type属性则解析为bean的类型。
@Resource装配顺序:
1. 如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常
2. 如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常
3. 如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配,找不到或者找到多个,都会抛出异常
4. 如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配;
1.1.2@Autowired
Autowired是根据类型进行自动装配的,如果出现重复的会报错,@Qualifier配合@Autowired来解决这些问题。例如:
@Autowired
@Qualifier("userServiceImpl")
1
2
基本面试也常问两者的区别:
Autowired按byType自动注入,Resource默认按 byName自动注入
@Autowired//默认按type注入
@Qualifier(“cusInfoService”)//一般作为@Autowired()的修饰用
@Resource(name=“us