Listener

Listener

表示监听器,是JavaWeb三大组件(Servlet、Filter、Listener)之一。可以监听在application、session、request三个对象创建、销毁或者往其中添加修改删除属性时自动执行代码的功能组件。

Listener分类

监听器分类 监听器名称 作用
ServletContext监听 ServletContextListerner 用于对ServletContext对象进行监听(创建、销毁)
ServletContextAttributeListener 对ServletContext对象中属性的监听(增删改属性)
Session监听 HttpSessionListener 对Session对象的整体状态的监听(创建、销毁)
HttpSessionAttributeListener 对Session对象中的属性监听(增删改属性)
HttpSessionBindingListener 监听对象于Session的绑定和监听
HttpSessionActivationListener 对Session数据的钝化和活化的监听
Request监听 ServletRequestListener 对Request对象进行监听(创建、销毁)
ServletRequestAttributeListener 对Request对象中属性的监听(增删改属性)

ServletContextListener使用

  1. 定义类,实现ServletContextListener接口

    public class ContextLoaderListener implements ServletContextListener {
        /**
        * ServletContext对象被创建:整个web应用发布成功
        * @param servletContextEvent
        */
        @Override
        public void contextInitialized(ServletContextEvent servletContextEvent) {
            // 加载资源
            System.out.println("ContextLoaderListener。。。。");
        }
    
        /**
        * ServletContext对象被销毁:整个web应用被卸载
        * @param servletContextEvent
        */
        @Override
        public void contextDestroyed(ServletContextEvent servletContextEvent) {
            // 释放资源
        }
    }
    
  2. 在类上添加@WebListener注解