2012-11-01 251 views
0

我在一個控制檯Java應用程序中使用Spring的外荷載屬性文件。 我將應用程序部署,如:春控制檯應用程序,從JAR

folder/myJar.jar 
folder/db/connection.properties 

如何加載connection.properties在應用程序上下文中的PropertyPlaceholderConfigurer

我已經試過

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="location" value="db/connection.properties"/> 
</bean> 

,但它不會工作。

我需要它這樣對我的數據庫的用戶名/密碼和其他細節。

+0

添加「」到你的班級路徑? –

回答

10

類路徑前綴file:添加到位置值:

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="location" value="file:db/connection.properties"/> 
</bean> 
+0

那不是從文件系統的根目錄開始?因此必須存放在/db/connection.properties或C:/db/connection.properties?我想你想要相對於類路徑。也許我錯過了一些東西。 –

+0

它相對於項目文件夾@ kmb385。 'file:/ db/properties'將意味着你在UNIX/Windows文件系統中分別引用的內容。 – Vikdor

+0

剛剛在spring文檔中找到它,沒有附加到FileSystemApplicationContext(即, FileSystemApplicationContext不是實際的ResourceLoader)的FileSystemResource將按照您的預期處理絕對對象和 相對路徑。相對路徑是相對於當前工作目錄,而 絕對路徑相對於所述文件系統的根。 –

-1

指定該文件是在價值屬性

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="location" value="classpath:db/connection.properties"/> 
</bean> 
相關問題