【发布时间】:2012-06-13 17:55:17
【问题描述】:
我的 Spring 配置中有两个 bean,beanA 和 beanB。这两个 bean 都实现了相同的接口。我有一个带有接口类型的自动装配字段的类(即,它将填充beanA 或beanB 的实例)。
最初只有一个 bean,所以我简单地使用了 @Autowired 注释并填充了该字段。但是,现在有两个可以自动装配的潜在 bean。我想根据我的.properties 资源之一中是否存在属性来自动装配 bean。有什么优雅的方法可以做到这一点?
我现在使用的解决方案是在 autowired 字段上使用@Qualifier 注释来指定beanA,然后检查该属性是否存在于代码中。如果是这样,我将该字段重新分配给beanB 的实例。这是一种非常笨拙的方法,所以我正在寻找更好的选择。
【问题讨论】:
标签: java spring dependency-injection javabeans autowired