【问题标题】:Get servlet init params in servlet context listener在 servlet 上下文监听器中获取 servlet 初始化参数
【发布时间】:2016-04-27 05:37:01
【问题描述】:
 <listener>
    <listener-class>config</listener-class>
</listener> 
  <servlet>
<servlet-name>ProcessReg</servlet-name>
<servlet-class>ProcessReg</servlet-class>
<init-param>
    <param-name>text</param-name>
    <param-value>HelloWorld1</param-value>
</init-param>

public class config implements ServletContextListener {



@Override
public void contextInitialized(ServletContextEvent event) {
    ServletContext servletContext = event.getServletContext();
    String text1 = servletContext.getInitParameter("text");

在方法 contextInitialized(ServletContextEvent event) 中,如果有两个 servlet ,例如,假设第二个 servlet 的名称是 Servlet2 ,假设还有 init - param 称为 text ,值为 HelloWorld2

listener 是如何知道使用ProcessReg servlet 的?

如何从Servlet2 得到param ??

【问题讨论】:

    标签: servlets servletcontextlistener init-parameters


    【解决方案1】:

    需要区分servlet初始化参数和上下文初始化参数。

    上下文初始化参数为:

    • 上下文范围;
    • &lt;context-param&gt; 元素中声明,直接在&lt;web-app&gt; 根下;
    • 通常使用ServletContext.getInitParameter() 方法访问,例如从侦听器的 contextInitialized() 方法内部。

    Servlet初始化参数为:

    • servlet 特定的;
    • &lt;init-param&gt; 元素中声明在&lt;servlet&gt; 元素内;
    • 通常使用ServletConfig.getInitParameter() 方法访问,例如从 servlet 的 init() 方法内部。

    【讨论】:

      猜你喜欢
      • 2017-08-17
      • 1970-01-01
      • 2010-11-30
      • 1970-01-01
      • 1970-01-01
      • 2011-12-07
      • 1970-01-01
      • 1970-01-01
      • 2016-06-14
      相关资源
      最近更新 更多