使用 CustomAutowireConfigurer

CustomAutowireConfigurer 是一个 BeanFactoryPostProcessor,它允许您注册自己的自定义限定符注解类型,即使它们没有使用 Infra @Qualifier 注解。 以下示例显示了如何使用 CustomAutowireConfigurer

<bean id="customAutowireConfigurer"
    class="infra.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 定义将 primary 属性设置为 true,则选择它。