使用 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值 -
default-autowire-candidates元素上可用的任何<beans/>模式 -
@Qualifier注解的存在以及通过CustomAutowireConfigurer注册的任何自定义注解
当多个 Bean 符合自动装配候选条件时,确定“主要”Bean 的规则如下:如果候选项中恰好有一个 Bean 定义的 primary 属性设置为 true,则选中该 Bean。对于基于注解的配置,请参阅使用 @Primary 或 @Fallback 进行微调。