2008-11-21 76 views
3

我有一組EJB和其他Java類,需要根據部署它們的系統環境進行不同配置:生產,測試或實驗室。配置信息包括URL和數據庫連接信息等內容。配置Java企業應用程序的最佳方式

我們希望在每個環境中部署相同的確切產品(EAR文件),然後讓代碼找出它的位置和配置應該是什麼,而無需聯繫每個部署服務器環境做出改變。

以集中,可靠,易於維護的方式配置所有這些組件的最佳方式是什麼?

感謝您的想法。

回答

0

數據庫連接池信息的存儲/配置方式取決於應用程序服務器供應商。將其他可變的東西放在類路徑的屬性文件中。

2

最好的恕我直言,就是使用JNDI條目。

您可能需要重新編寫應用程序的某些部分,以使用論文項目,而不是普通的增值經銷商,但與此設置:

  • 配置服務器無關性:每個供應商提供自己的實現,但spec是一個標準。
  • 在集羣環境中,配置可以在集羣範圍內的JNDI樹被持久化(見的JBoss)
  • 配置可以直通的WebAdmin,無需重新啓動服務器進行更改。
0

如果您正在向某個容器的三個不同實例部署完全相同的EAR,那麼您將不得不編輯部署設置,因爲部署過程無法知道您的三個中的哪一個您希望在特定部署中使用的版本。

如Piere-Yves所述,部署設置應該放入JNDI條目中。

如果我是你,我會讓我的部署腳本(Ant?)正確地填充JNDI條目,具體取決於您要部署到的環境。

相關問題