@Primary
因为根据类型装配可能会导致多个类型一致的bean,在有多个同一个类型的bean时,我们希望提供一个优先注入的。一种完成这个需求的方式是@Primary。当bean被@Primary标注时,当有多个同一个类型的bean时,被这个注解标注的bean会优先注入
@Configuration
public class FinshConfiguration {
@Bean
@Primary
public Fish firstFist() {
return new Fish();
}
@Bean
public Fish secondFist() {
return new Fish();
}
}
等价于
<bean id="firstFish" class="com.jianglei.Fish" primary="true"/>
<bean id="secondFish" class="com.jianglei.Fish"/>