@Autowired注解描述注入规则
1.@Autowired注解描述属性时,底层会基于属性类型从spring中找容器对象,根据属性进行注入。
2.假如有多个类实现了bean对象情况下,首先spring框架会根据类型的变量名进行注入(实现类的默认名字是类名首字母小写)或在@Component输入指定函数()中填写,然后@Autowired根据变量名判断注入。
3.根据@Qualifier注解配合@Autowired注解使用
@Qualifier注解描述
用于指定那个bean的名字对应的对象注入给描述的属性
@Autowired注解应用规则@Qualifier注解作用
@Autowired由spring框架定义,用于描述类中属性或相关方法。Spring框架在项目运行时假如发现由他管理的Bean对象中有使用@Autowired注解描述的属性或方法,可以按照指定规则为属性赋值(DI)。其基本规则是:首先要检测容器中是否有与属性或方法参数类型相匹配的对象,假如有并且只有一个则直接注入。其次,假如检测到有多个,还会按照@Autowired描述的属性或方法参数名查找是否有名字匹配的对象,有则直接注入,没有则抛出异常。最后,假如我们有明确要求,必须要注入类型为指定类型,名字为指定名字的对象还可以使用@Qualifier注解对其属性或参数进行描述(此注解必须配合@Autowired注解使用)。