CustomAutowireConfigurer 是一个 BeanFactoryPostProcessor,它可以让你注册自己的自定义限定符注解类型,即使它们没有用 Spring 的 @Qualifier注解。下面的例子展示了如何使用 CustomAutowireConfigurer:

    1. <bean id="customAutowireConfigurer"
    2. class="org.springframework.beans.factory.annotation.CustomAutowireConfigurer">
    3. <property name="customQualifierTypes">
    4. <set>
    5. <value>example.CustomQualifier</value>
    6. </set>
    7. </property>
    8. </bean>

    AutowireCandidateResolver 通过以下方式确定候选者:

    • 每个 bean 定义的 autowire-candidate 属性
    • <beans>元素上的 default-autowire-candidate属性
    • @qualifier 注解和任何向 CustomAutowireConfigurer注册的自定义注解的存在

    当多个 Bean 有资格成为自动装配的候选者时,确定方法如下。如果候选 Bean 定义中正好有一个 primary 属性被设置为 true,它就被选中。