gpt4 book ai didi

Java EE Web应用程序和环境配置

转载 作者:太空宇宙 更新时间:2023-11-04 09:22:48 25 4
gpt4 key购买 nike

您好 stackoverflow 用户,

我发现自己正在开发 Java EE Web 应用程序,并且我知道我的应用程序将部署到多个环境中。每个环境的某些功能配置可能略有不同,例如远程 Web 服务 URL。另外,如果可能的话,我希望满足以下两个属性:

  1. 每个环境配置不应位于 Web 应用程序存储库中

    这是因为我觉得它不属于那里。我不想在我的源代码旁边管理 n 配置。而且,如果那里有 secret ,我不希望每个开发人员都看到它们......

  2. 强制配置的完整性

    如果我说我需要某个配置参数/资源,那么如果不提供它那就毫无意义。我不希望我的应用程序在这种情况下启动。

请问,有更知识渊博、更有经验的人可以帮助我并插入我走向正确的方向吗?

<小时/>

到目前为止我的发现

当然,我已经花了一些时间寻找答案......

Spring框架

我知道spring提供了一个Environment类作为特定于环境的配置的抽象。但是,我没有使用 Spring 框架,也没有描述如何将此配置放在 Web 应用程序之外。

Java EE JNDI 服务

根据Java EE platform specification ,正确的方法是在我的 WEB-INF/web.xml 中使用 env-entryresource-refresource-env-ref 元素,并将它们绑定(bind)/设置为 Web 应用容器配置中的值。

这实际上听起来非常好,只是我不知道如何强制此配置的完整性。我的意思是,我声明了上述元素,告诉部署者我需要它们,但我看到(在 tomcat 上测试)当某些元素(例如资源环境引用)未绑定(bind)时,应用程序仍然部署(并且工作不正确)。

我不知道如何实现它,但是,如果没有更好的东西,它仍然感觉是我能找到的最好的东西。 :-|

最佳答案

我采用了 JDNI 方法。

我通过引入自定义 ServletContextListener 实现添加了配置验证。

关于Java EE Web应用程序和环境配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58112793/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com