簡體   English   中英

如何加載屬性文件並將其傳遞給java單例(枚舉)

[英]How do load a properties file and pass it to a java singleton (enum)

我有一個java單例類,它有我的應用程序設置。

我使用了這種方法: 在Java中實現單例模式的有效方法是什么?

所以我有:

public enum MySettings {

   INSTANCE;

   // bunch of private vars


   private MySettings {
     // load a json file and set my properties
     JsonParser parser = jf.createJsonParser(new File("HARD_CODED_PATH_HERE"));
   }

   // public getters/setters here


}

所以問題是我目前的硬編碼路徑。

我在/ WEB-INF /文件夾中創建了一個settings.properties文件,現在問題是我知道如何加載屬性文件的唯一方法,它需要servlet上下文:

Properties prop = new Properties();
propertiesload(getServletContext().....);

還有另一種加載方法嗎?

那么這個屬性文件是屬性文件的靜態表示嗎? 即它是非常快速和有效的?

你可以嘗試將你的屬性直接放在src文件夾而不是WEB-INF文件夾下嗎?

WORKDIR
+ SRC
| + PACKAGES
| | + org.personal.foo  
| - system.properties
| + WEB-INF

Spring具有將屬性文件公開為bean的功能。 鑒於您使用“Spring”標記了帖子,您可能想要走那條路。

這是一個人如何使用Spring加載屬性文件:

http://www.zparacha.com/how-to-read-properties-file-in-spring/#.T2JQqt5SRfQ

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM