gpt4 book ai didi

java - Tomcat 生产/开发环境

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:57:21 29 4
gpt4 key购买 nike

在 PHP 开发中,可以通过服务器的“环境”变量确定应用程序是在生产环境还是开发环境中运行。

在 tomcat 服务器上是否有类似的变量可用,或者是否有更好的方法将应用程序用于生产和开发?

最佳答案

我们拥有的每个 Tomcat 实例都在 server.xml 文件的 GlobalNamingResources 部分中定义了一个 isProduction 标志。

server.xml:

<Server ...>
...
<GlobalNamingResources>
<Environment name="isProduction" value="false" type="java.lang.Boolean" override="false" />
</GlobalNamingResources>

<Service name="Catalina">
... etc ...
</Service>
</Server>

这允许通过在引用资源的 context.xml 中创建一个属性来使该属性在整个应用程序中可用:

context.xml:

<?xml version="1.0" encoding="UTF-8"?>
<Context ...>
<ResourceLink name="isProduction" global="isProduction" type="java.lang.Boolean" />
...
</Context>

获取值:

public boolean isProduction() {
Object o;
try {
o = (new InitialContext()).lookup("java:comp/env/isProduction");
} catch (NamingException e) {
o = Boolean.FALSE; // assumes FALSE if the value isn't declared
}
return o == null ? Boolean.FALSE : (Boolean) o;
}

关于java - Tomcat 生产/开发环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8378444/

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