spring @Autowired和@Qualifier组合时,属性注入逻辑

@Autowired和@Qualifier注入逻辑如下:
1.首先@Autowired注解会判断是否有对应类型的bean,如果少于1个,则报错:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.zj.test.frame.spring.injection.T2020113.bean.TestBean' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=testBean2)}

2.如果有对应类型的bean,则进入3。

3.会在满足类型要求的bean中查找@Qualifier指定的bean id的bean,如果存在则注入属性。
如果对应id的bean不存在,会报错:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException

posted @ 2020-11-03 14:24  IamCraven  阅读(111)  评论(1)    收藏  举报