Spring是否支持跨多个属性文件的嵌套属性?

时间:2014-10-11 12:33:07

标签: spring spring-annotations

我想在多个文件之间分隔属性,并允许稍后加载的文件具有引用或组合先前定义的属性(嵌套)的属性。例如:

application.properties(例如dbName = test,dbHost = targethost) mysql.properties(例如jdbcDriver = com.mysql.jdbc.Driver,jdbcUrl = jdbc:mysql:// $ {dbHost:localhost):$ {dbPort:3306} / $ {dbName})

我使用声明如:

<context:property-placeholder location="classpath:application.properties" order="0" ignore-unresolvable="false"/>
<context:property-placeholder location="classpath*:${dbType:mysql}.properties" order="1" ignore-unresolvable="false"/>

<bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close">
    <property name="driverClass" value="${jdbcDriver}"/>

当我尝试在Spring配置中创建dataSource时,我收到一条错误消息,指出$ {dbName}或$ {jdbcDriver}未解析。

例如:

Could not resolve placeholder 'jdbcDriver' in string value "${jdbcDriver}";

如果有可能以这种方式将属性组织到不同的文件中,有人可以解决这个问题,如果是这样,如何配置Spring以正确解析属性,以便我的bean声明不会失败?

提前致谢。

0 个答案:

没有答案