能够标识的位置:
1.标识在成员变量上,此时不需要设置成员变量的set方法
2.标识在set方法上
3.为当前成员变量赋值的有参构造上
bytype:根据类型在ioc容器中去找到一个类型匹配的bean来为当前属性自动赋值
:byName:把我们要赋值的属性名作为bean的id在ioc容器中匹配的某一个bean来为当前属性进行赋值
@Autowired:原理:默认通过bytype来实现,在ioc容器中通过类型匹配某个bean为属性赋值
4.若有多个类型匹配的bean,此时会自动转换为byName的方式实现自动装配的效果,
即将要赋值的属性的属性名作为bean的id匹配某个bean位属性赋值
5.若byType和byName的方式都无法实现自动装配,即ioc容器中有多个类型匹配的bean,
且这些bean的id和要赋值的属性的实行名都不一致,此时会抛出异常。
解决办法:
6.此时可以在要赋值的属性上,添加一个注解@Qualifier,通过该注解的value属性值,指定某个bean的id,将为这个bean的属性赋值
@Autowired 实现自动装配功能的注解
最新推荐文章于 2023-02-14 14:28:24 发布