我有javax.persistence.EntityManagerFactory的3个bean。
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
//Make this the default bean
}
这是我得到的例外。
No qualifying bean of type 'javax.persistence.EntityManagerFactory' available: expected single matching bean but found 3
如何使上面的bean成为默认bean,其中有多个相同类型的bean?
答案 0 :(得分:2)
我认为在这种情况下@Primary
注释就足够了。
检查here。
答案 1 :(得分:2)
您还可以定义@Bean
名称并使用@Qualifier
注释来注入bean依赖项。
例如:
@Bean(name="first")
MyBean getFirstBean() {..}
@Bean(name="second")
MyBean getSecondBean(){..}
@Bean(name="third")
MyBean getThirdBean(){..}
@Autowired
@Qualifier("second")
public void usingTheSecondBeand( MyBean theSecondBean){..}