Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring是否支持跨多个属性文件嵌套属性?_Spring_Spring Annotations - Fatal编程技术网

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

Spring是否支持跨多个属性文件嵌套属性?,spring,spring-annotations,Spring,Spring Annotations,我希望在多个文件中分离属性,并允许稍后加载的文件具有引用或组合先前定义的属性(嵌套)的属性。例如: Could not resolve placeholder 'jdbcDriver' in string value "${jdbcDriver}"; application.properties(例如dbName=test,dbHost=targethost) mysql.properties(例如jdbcDriver=com.mysql.jdbc.Driver,jdbcUrl=jdbc:my

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

Could not resolve placeholder 'jdbcDriver' in string value "${jdbcDriver}";
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来正确解析属性,这样我的bean声明就不会失败


提前谢谢。

您可以使用maven resources插件来过滤嵌套属性。PS:我假设属性像${name:default}在.properties文件中不受支持吗?不仅如此,@hsluo,而且如果您有三个属性文件,并且C在B中引用属性,同样B在A中引用属性,那么B或C中的属性都无法解析。正在寻找如何实现此功能的基本示例,或者放弃并使用Guice或其他Spring替代方案。用户我的错误。我有一个未终止的${。有一个输入错误,终止字符是)而不是}。很难看到,并且花了一天的时间进行诊断。所以这个示例有效吗?是的。其中一个文件有一个输入错误,错误消息没有那么大帮助。我确实发现了与上下文相关的其他问题:property placeholder,这是一个已知的错误,大约两年了,它们根本不起作用:。XML和占位符的上部内容,请不要使用所有配置代码。我所看到的折衷方案,容易出错且难以诊断的船锚(弹簧),或者需要大量附加组件以使其在实际意义上可用的迷你自行车(番石榴)。