我有这个:
<bean class="...">
<constructor-arg name="beans">
<list>
<ref bean="beanA" />
<ref bean="beanB" />
</list>
</constructor-arg>
</bean>
我想通过属性文件配置列表,例如:
Properties file:
beans=beanA,beanB
XML file:
<bean class="...">
<constructor-arg name="beans">
<list refs="${beans}" />
</constructor-arg>
</bean>
Spring可以这样吗?
编辑:只是为了提供一些上下文,以防有问题的替代解决方案,这是针对必须写入多个数据库的应用程序,我想配置哪些数据库已启用属性文件,因此我不必为开发/生产维护单独的XML文件。
答案 0 :(得分:0)
我的第一个是使用FactoryBean,在其中注入属性$ {beans}和应用程序上下文。然后在工厂bean中,循环访问每个bean id / name,并调用上下文以按名称/ id检索bean。然后使用构造函数和刚刚构建的列表构造bean。
答案 1 :(得分:-1)
使用注释即
@Value("${beans}")
private Class<? extends YourBean>String[] beanList;