2011-04-11 33 views
2

我維護一個多平臺開發框架,該框架試圖根據通過各種方式推斷的特定系統和環境信息來配置環境變量。一旦我推斷出這些變量,我將它們存儲在Java屬性文件中供以後使用。這個文件也可以由我的框架(開發者)的用戶編輯。Java屬性文件的良好存儲庫組織實踐

我有一個名爲Env的類管理這個屬性文件,它在一個名爲org.myproject.config的包中。我目前正在將默認屬性文件存儲在src/org/myproject/config中。我想知道,在我的項目的這個目錄下存儲配置類型文件是否好的做法?不知道該去哪裏。任何輸入讚賞。

-tjw

回答

1

,如果你希望保持平臺無關性,您應該使用Java API Preferences。一旦你指定了一個文件路徑,你就會對你的應用程序運行的環境做出很多假設。

+0

Prefs API並不適合我的用例。我的偏好並不總是在變化中。它們在環境的整個生命週期中都被設置一次。只有當環境發生變化(不太可能)時,它們纔會發生變化。 – 2011-04-11 02:47:18

+0

我不會根據這個前提取消首選項API的資格。 – 2011-04-11 02:54:13

+0

它使用平臺依賴的後備存儲。這個支持存儲是我在初始調用時確定的變量之一,因此,如果我改變了當前的設計,那麼我也會有雞/蛋的問題。這太過分了,我會用炸藥捕魚。 – 2011-04-11 02:56:43

1

根據我們的經驗,特定於環境的信息不應存儲在存儲庫中。有人更新錯誤的文件,當他提交其他用戶/環境受到影響。我們在每個環境中分別保存環境配置。在我們的例子中,環境變量存儲在數據庫表中,我們在屬性文件中唯一的環境信息是創建到環境變量位置的JDBC連接的最小必需字段。環境更新通過IT變更請求或通過軟件升級完成。

+0

存儲在svn中的默認首選項適用於任何平臺。事實上,修改這個文件可能會很有用。還有什麼地方可以存儲這樣的文件? – 2011-04-11 02:33:53