Servlet事件监听器是Servlet规范中定义的一种特殊的类,监听Web应用程序中的ServletContext、HttpSession和ServletRequest等域对象的创建和销毁事件,以及监听这些域对象的属性发生修改的事件。
一、按监听对象划分,监听器可以分为以下三种类型
①用于监听ServletContext的事件监听器;
②用于监听HttpSession的事件监听器;
③用于监听ServletRequest的事件监听器。
二、按监听事件类型划分,监听器可以分为以下三种类型
①用于监听域对象创建和销毁的监听器;
②用于监听域对象中的属性增加,删除和修改的事件监听器;
③用于监听绑定到HttpSession域中某个对象的状态的事件监听器。
三、以下是不同类型的监听器
①ServletContext对象的创建和销毁,必须实现ServletContextListener接口,这个接口提供了2个方法,分别在对象创建和销毁时调动。
②HttpSession对象的创建和销毁,必须实现HttpSessionListener接口,这个接口提供了2个方法,分别在对象创建和销毁时调用。
③ServletRequest对象的创建和销毁,必须实现ServletRequestListener接口,这个接口提供了2个方法,分别在对象创建和销毁时调用。
④ServletContext域属性改变,必须实现ServletContextAttributeListener接口,这个接口提供了3个方法,分别在属性添加,删除和修改时调用。
⑤HttpSession域属性改变,必须实现HttpSessionAttributeListener接口,这个接口提供了3个方法,分别在属性添加、删除和修改时调用。
⑥ServletRequest域属性改变,必须实现ServletRequestAttributeListener接口,这个接口提供了3个方法,分别在属性添加、删除和修改时调用。
⑦Session绑定事件监听,必须实现HttpSessionBindingListener接口,这个接口提供了2个方法,在有对象被绑定到session对象的某个属性上和从session对象的某个属性上移除时调用。
⑧Session活化和钝化事件监听,必须实现HttpSessionActivationListener接口,这个接口提供了2个方法,在session钝化和活化时调用。