当web应用在Web容器中运行时,Web应用内部会不断地发生各种事件:如Web应用被启动、Web应用被停止、用户session开始、用户session结束、用户请求到达等。通常来说web事件对开发者是透明的。
Servlet API 提供大量监听器来监听Web应用的内部事件,从而允许当Web内部事件发生时回调事件监听器内的方法。
使用Listener的步骤:
①定义Listener实现类
②通过注解或在web.xml文件中配置Listener
监听不同的Web事件所用的监听器也不相同,常用的Web事件监听器接口有如下几个:
→ ServletContextListener:用于监听Web应用的启动和关闭。
→ ServletContextAttributeListener:用于监听ServlerContext范围(application)内属性的改变。
→ ServletRequsetListener:用于监听用户请求。
→ ServletRequestAttributeListener:用于监听ServlerRequest范围(request)内属性的改变。
→ HttpSessionListener:用于监听用户session的开始和结束。
→ httpSessionAttributeListener:用于监听HttpSession范围(session)内属性的改变。