配置Java企业应用程序的最佳方法

时间:2008-11-21 22:38:26

标签: java configuration ejb

我有一组EJB和其他Java类需要根据部署它们的系统环境进行不同的配置:生产,测试或实验。配置信息包括URL和数据库连接信息等内容。

我们希望在每个环境中部署相同的产品(EAR文件),然后让代码确定它的位置和配置应该是什么,而不必在每个环境中联系到每个部署服务器做出改变。

以集中,可靠,易于维护的方式配置所有这些组件的最佳方法是什么?

感谢您的想法。

3 个答案:

答案 0 :(得分:2)

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

您可能需要重新编写应用程序的某些部分才能使用这些条目而不是普通变量,但使用此设置:

  • 配置与服务器无关:每个供应商都提供自己的实现,但规范是标准。
  • 在集群环境中,config可以保存在集群范围的JNDI树中(参见JBoss)
  • 可以通过webadmin更改配置,而无需重新启动服务器。

答案 1 :(得分:0)

如何存储/配置数据库连接池信息取决于应用服务器供应商。将其他变量内容放在类路径的属性文件中。

答案 2 :(得分:0)

如果要将完全相同的EAR部署到某个容器的三个不同实例,而不是必须编辑部署设置,因为部署过程无法让您了解您的三个版本中的哪一个喜欢在特定部署中使用。

部署设置应该进入JNDI条目,如Piere-Yves所述。

如果我是你,我会让我的部署脚本(Ant?)正确地填充JNDI条目,具体取决于你要部署到哪个环境。