【发布时间】:2014-09-10 23:42:39
【问题描述】:
我有一个非常常见的用例——当我的程序处于开发模式、测试模式或部署模式时连接到不同的数据库。
我现在这样做的方式是配置一个数据源,并通过 bean:property 标签传递 ${...} 属性。
但是要获得 ${...},我正在做
<context:property-placeholder properties-ref="myProperties" />
在 xml 配置的底部,我有
<beans profile=test>
<util:properties id=myProperties>
</util>
</beans>
<beans profile=dev,default>
<util:properties id=myProperties>
</beans>
<beans profile=prod>
<util:properties id="myProperties>
</beans>
这似乎效率低下、过于冗长且容易出错。所有弹簧属性教程都告诉我 context:property-placeholder 是环境感知的,而 Environment 负责配置文件,那么我该如何简化呢?对我来说很直观,有一种更简单的方法,我就是想不通。
真的,我正在寻找的是在 context:properties-placeholder 或类似的东西上指定配置文件。
【问题讨论】:
标签: spring properties-file spring-environment