我必須用春天util:properties
,但是,我需要的是這樣的:如何在util:屬性中使用屬性文件?
if propertyFile x exists, use x, otherwise, use y.
能否請您指教我怎樣才能獲得呢?
我必須用春天util:properties
,但是,我需要的是這樣的:如何在util:屬性中使用屬性文件?
if propertyFile x exists, use x, otherwise, use y.
能否請您指教我怎樣才能獲得呢?
可能是這個解決方案的一半! Spring可以加載通配符資源。請參閱spring <util:properties /> with wildcards
這樣你能說出你的文件,如:如果存在x和y兩者都是
<bean id = "config"
class = "org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name = "locations"
value = "classpath*:somefolder/*-config.properties" />
</bean>
:x-config.properties和y-config.properties加載。
實際上,有一個選項ignoreResourceNotFound
,但它不可用於命名空間組件。您可以直接使用PropertiesFactoryBean
:
<bean id="props" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations" value="y.properties, x.properties"/>
<property name="ignoreResourceNotFound" value="true"/>
</bean>
如果您x.properties
不存在,它會被忽略,從y.properties
屬性將保持不變。
如果x.properties
存在,它包含相同的keys
爲y.properties
,它們將覆蓋那些來自y.properties
,因爲所有locations
分別裝入一個接一個。