繁体   English   中英

这是为我的servlet拥有“全局”参数的正确方法吗?

[英]Is this the right way to have “global” parameters for my servlets?

如果我有:

  <context-param>
    <param-name>SomeParam</param-name>
    <param-value>SomeValue</param-value>
  </context-param>

在我的web.xml ,这是指定选项的servlet方式(例如使用配置文件的方式),还是我做错了什么? 我知道可以为servlet指定的init-param ,但是我想确保所有servlet的某些值都相同。

<context-param>用于定义所有 servlet都可以使用的上下文范围的初始化参数。 在Servlet内部,您可以通过ServletContext#getInitParameter()获得它们,例如

public void init() {
    String someParam = getServletContext().getInitParameter("someParam");
}

这是为所有servlet设置“全局”参数的正确方法。 但您也可以在<servlet>定义特定于servlet的初始化参数,如下所示:

<servlet>
    <servlet-name>myServlet</servlet-name>
    <servlet-class>com.example.MyServlet</servlet-class>
    <init-param>
        <param-name>someParam</param-name>
        <param-value>someValue</param-value>
    </init-param>
</servlet>

您可以通过继承的 GenericServlet#getInitParameter()方法获取它们。 例如

public void init() {
    String someParam = getInitParameter("someParam");
}

是的,您是对的。继续进行即可。

暂无
暂无

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

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