如何讀取jar包外的properties文件和log4j.properties


 

一般在項目中使用properties配置文件的時候都將相關的properties文件放在src目錄下,在將該app打包生成jar后,相應的properties配置文件生...

一般在項目中使用properties配置文件的時候都將相關的properties文件放在src目錄下,在將該app打包生成jar后,相應的properties配置文件生成在jar包中,這樣的話要修改配置文件又要重新打jar包,那是相當的麻煩。 

既然這么麻煩,你肯定想將配置文件放在其他的目錄下,生成的jar包內不包含相應的配置文件,修改配置文件無需重新打包,沒錯,下面就是一種解決方案了。 

讀取jar包內配置文件:
 

  1. InputStream in = this.getClass().getClassLoader().getResourceAsStream("/configfilename.properties"); 

讀取jar包外配置文件:
 

  1. String filePath = System.getProperty("user.dir") + "/conf/configfilename.properties";    
  2. InputStream in = new BufferedInputStream(new FileInputStream(filePath));   

另外,如果app中使用到log4j.properties文件,默認的存放路徑是src/log4j.properties,同上面一樣,我想把log4j.properties放在其他目錄中,這樣一來,在修改log4j配置文件的時候無需重新打jar包。 

在main函數第一行添加如下代碼:

  1. PropertyConfigurator.configure(System.getProperty("user.dir") + "/conf/log4j.properties"); 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM