繁体   English   中英

Tomcat替换VM参数

[英]Tomcat Replacing VM arguments

这可能是一个愚蠢的问题:

我目前有一些我的Web应用程序需要的VM参数。 他们是这样的:

-Dcom.company.custom.var='test'

我在代码中访问它们:

System.getProperty("com.company.custom.config")

我想将它们移动到一个tomcat xml文件(server.xml,context.xml等)中,但我不知道如何去做。

所以我的问题是两个部分。 我应该在哪里(以及如何)将这些变量放入xml中,如何在代码中访问它们?

如果已经得到答复,请提前致谢并表示歉意。 我对这个主题的搜索失败了。

如果这些是特定于应用程序的配置项,则其标准位置是web.xml<context-param> 像这样的东西:

<context-param>
    <param-name>myvar</param-name>
    <param-value>value</param-value>
</context-param>

您可以使用ServletContext#getInitParameter(String)从代码中访问这些值。 从servlet内部,您可以编写如下内容:

String myvar = getServletContext().getInitParameter("myvar");

正式地说,所有JVM选项都可以选择setenv.sh (适用于Unix)或setenv.bat (适用于Windows)。 默认情况下 ,此文件不存在于Tomcat中,但如果您创建一个文件,它将被启动脚本选中。

您应该使用此而不是server.xmlserver.xml可能会从一个Tomcat版本更改为另一个版本,但setenv.sh (或.bat)完全是自定义的。

正如您所指出的,通过System.getProperty(...)读取此值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM