我正在开发一个使用Tomcat环境变量(通过管理控制台创建)的应用程序。凭借我对此的一点经验,我意识到当应用程序未部署并再次重新部署时,这些都会丢失。
我想将它们保留在那里,或者在部署时自动创建它们。
有可能吗?因为每次重新部署时重新创建环境变量都很麻烦。
我正在使用Tomcat 7.0。
答案 0 :(得分:2)
是的,这是可能的。您在server.xml中注册变量,每个应用程序上下文可以选择引用它们中的任何一个以使它们在JNDI中可用。
server.xml中
<GlobalNamingResources>
<Environment name="example" value="prod" type="java.lang.String" override="false" />
</GlobalNamingResources>
context.xml中
<ResourceLink name="example" global="example" type="java.lang.String" />
code.java
String example = (String) (new InitialContext()).lookup("java:comp/env/example");