注入命名bean时name的默认值

时间:2017-05-31 10:43:40

标签: java spring

在春天,我们可以定义具有属性名称的bean。所以我们可以使用@Named注释注入该bean。 我有两个相同类型的bean,名称不同。

<bean id="MyBean1" name="first" class="org.example.MyClass">
   ...
</bean>
<bean id="MyBean2" name="last" class="org.example.MyClass">
   ...
</bean>

有没有办法注入一个没有定义名称的bean?例如,如果在注入时未定义名称,则定义名称的默认值。

1 个答案:

答案 0 :(得分:3)

用户@Primary注释或<bean primary="true|false"/>标签通过xml

  

通过将其元素的primary属性设置为true,将单个bean定义指定为主要候选者。

     

无论Java版本如何,当多个bean有资格作为autowire候选者时,“主要”候选者的确定是相同的:如果候选者中只有一个bean定义的主要属性设置为true,则将选择它。

文档here