我正在使用本地覆盖来指定属性,并希望确认这仅适用于applicationContext中指定的属性。基本上我想确保这没有任何意想不到的后果......
<context:property-placeholder
properties-ref="defaultProperties"
location="classpath:my.properties"
ignore-resource-not-found="true"
ignoreunresolvable="true"
local-override="true"/>
<util:properties id="defaultProperties">
<prop key="some.property">${overriding.property}</prop>
</util:properties>
除了$ {some.property}之外,没有任何属性会被覆盖,是吗?
答案 0 :(得分:1)
以下代码不会覆盖除$ {some.property}以外的任何属性:
<context:property-placeholder properties-ref="defaultProperties" location="classpath:my.properties, "ignore-resource-not-found="true" ignoreunresolvable="true" local-override="true"/>
<bean id="defaultProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="properties">
<util:properties local-override="true">
<prop key="some.property">${overriding.property}</prop>
</util:properties>
</property>