使用 CustomAutowireConfigurer
CustomAutowireConfigurer 是一个 BeanFactoryPostProcessor,它允许您注册自己的自定义限定符注解类型,即使它们没有用 Spring 的 @Qualifier 注解进行注解。以下示例展示了如何使用 CustomAutowireConfigurer
<bean id="customAutowireConfigurer"
class="org.springframework.beans.factory.annotation.CustomAutowireConfigurer">
<property name="customQualifierTypes">
<set>
<value>example.CustomQualifier</value>
</set>
</property>
</bean>
AutowireCandidateResolver 通过以下方式确定自动装配候选者:
-
每个 bean 定义的
autowire-candidate值 -
<beans/>元素上可用的任何default-autowire-candidates模式 -
@Qualifier注解和通过CustomAutowireConfigurer注册的任何自定义注解的存在
当有多个 bean 符合自动装配候选条件时,"primary" 的确定如下:如果在所有候选 bean 定义中,只有一个 bean 定义的 primary 属性设置为 true,则选择该 bean。