我有一个Java的Web应用程序,它使用一些外部程序(调用命令行工具).
我想使命令行程序的路径可配置,以便我可以更改它而无需重新构建我的应用程序.
问题:
1)我应该使用哪个参数(在web.xml中可用的参数),如果它只设置一次(在部署时),之后永远不会更改?
2)如何在Java代码中访问此参数?
提前致谢
德米特里
Jig*_*shi 11
web.xml中
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app>
<context-param>
<param-name>command</param-name>
<param-value>SOME_COMMAND</param-value>
</context-param>
.
.
.
.
</web-app>
Run Code Online (Sandbox Code Playgroud)
Java代码
String commandToExecute = getServletContext().getInitParameter("command");
Run Code Online (Sandbox Code Playgroud)
另外
你也可以将这个东西放在classpath的property/xml文件中读取它,并在上下文初始化时将它放到servlet上下文中.
您可以使用env条目:
<env-entry>
<description>command line</descriptor>
<env-entry-name>commandLine</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>some_command</env-entry-value>
</env-entry>
Run Code Online (Sandbox Code Playgroud)
并从您的webapp代码中的任何位置获取它:
javax.naming.Context ctx = new javax.naming.InitialContext();
String command = (String) ctx.lookup("java:comp/env/commandLine");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7993 次 |
| 最近记录: |