servlet和jsp学习指南监听器

Posted 幽人月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet和jsp学习指南监听器相关的知识,希望对你有一定的参考价值。

     监听器是为了能够在servlet/jsp应用程序中进行事件驱动编程(Event-Driven Programming),所有事件类源自java.util.Event,并且监听器在以下三个不同级别中均可用:ServletContext、HttpSession及ServletRequest。

     我选择性的学习ServletContextListener。主要是其他的在项目中没有看到使用。有用到再来补充学习。

  javax.servlet.ServletContextListener。这是对Servlet Context生命周期事件做出响应的监听器。创建好Servlet Context时马上会调用它的其中一个方法,并在关闭Servlet Context之前调用它的另一个方法。

     注册监听器有两种方式

  (一)注解

  

@WebListener
public class AppListener implements ServletContextListener {
           
           。。。
}

  (二)在部署描述符中使用一个listener元素

<listener>
      <listener-class> org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

下面搬出书中的例子

@WebListener
public class AppListener implements ServletContextListener {

    public void contextDestroyed(ServletContextEvent arg0) {
        // TODO Auto-generated method stub

    }

    public void contextInitialized(ServletContextEvent sce) {

        ServletContext servletContext = sce.getServletContext();
        Map<String,String> countries = new HashMap<String, String>();
        countries.put("ca", "canada");
        countries.put("us", "United States");
        servletContext.setAttribute("countries", countries);
    }

}
View Code

  servlet容器启动时会创建servletContex这时候变回触发实现了ServletContextListener接口的AppListener。继而调用它的contextInitialized。实际上很多项目中都通过继承ServletContextListener来实现缓存的加载等其他项目初始化任务。

以上是关于servlet和jsp学习指南监听器的主要内容,如果未能解决你的问题,请参考以下文章

JSP 学习笔记

《Head First Servlets & JSP》-5-属性和监听

读书笔记之《head first Servlet and Jsp》 第五章 属性和监听者

JAVAWEB学习笔记23

熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器过滤器等Web组件以及MVC架构

jsp 监听器