2016-08-17 172 views
-1

我database.properties文件在以下位置: 的grails-app/conf目錄/ database.properties配置文件路徑動態Grails中

現在我需要讀取該文件並加載它的屬性如下:

public static Properties loadProperties(String fileName) {   
    Properties prop = new Properties();        
    try {               
     FileInputStream inputStream = new FileInputStream(fileName); 
     prop.load(inputStream);          
    } catch (IOException e) {          
     e.printStackTrace();           
    }                

    return prop;              
} 
  • 當我給的文件名作爲database.properties,它 顯示爲錯誤:java.io.FileNotFoundException:database.properties 當我們運行。

  • 另一方面,當我給文件名爲 grails-app/conf/database.properties它將在本地運行良好。但是 當我作爲WAR文件在tomcat服務器上運行時,它會顯示如上 錯誤:java.io.FileNotFoundException:database.properties。

現在我該如何解決上述問題,並可以在本地和Tomcat中運行我的代碼。

+0

這不是Grails的外部化配置方式。閱讀文檔:http://docs.grails.org/latest/guide/conf.html#configExternalized – rvargas

回答

1

您需要重新訪問位於http://docs.grails.org/latest/guide/conf.html#dataSource的Grails DataSource文檔。

沒有理由將文件存儲在與Grails配置相同的目錄中,並且只需在數據源配置中包含所需的屬性即可嘗試顯式讀取它。你會很高興你沒有花費所有的精力「重新發明輪子」。