代码之家  ›  专栏  ›  技术社区  ›  Geo

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

  •  2
  • Geo  · 技术社区  · 15 年前

    如果我有:

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

    web.xml ,这是servlet指定选项的方式(比如使用配置文件的方式),还是我做错了什么?我知道 init-param

    2 回复  |  直到 15 年前
        1
  •  4
  •   BalusC    15 年前

    这个 <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");
    }
    
        2
  •  1
  •   giri    15 年前

    是的,你说得对。去吧,它很好用。

    推荐文章