web.xml中的listener

来源:互联网 发布:linux ping timeout 编辑:程序博客网 时间:2024/06/07 07:03

listener存在两个接口

  1、ServletContextListener

  2、HttpSessionListener

 

解释一下:

实现ServletContextListener的类,需要实现两个方法:contextInitialized和contextDestroyed。

由于servletContext在整个应用的生命周期中只有一个实例,并且伴随容器启动而初始化和容器关闭而销毁,所以context一般作为缓存的初始化或者应用启动时候的预处理工作。

servletContext实例获取为:

public void contextInitialized(ServletContextEvent event) {
  context = event.getServletContext();
  ...
  }

在javaBean中获取servletContext方法为:servlet.getServletConfig().getServletContext();

在jsp中获取servletContext方法为:application.getContext("");

 

实现HttpSessionListener的类,需要实现两个方法:sessionCreated和sessionDestroyed。

sessionCotenxt在session创建的时候触发sessionCreated和session销毁的时候触发sessionDestroyed。故而HttpSessionListener一般用来记录在线人数。

 

sessionContext的实例获取为:

public void sessionCreated(HttpSessionEvent se) {
  sc=se.getSession().getServletContext();
  System.out.println("新建一个session");
}

原创粉丝点击