1.监听器定义
监听器也叫Listener,是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。通过监听器,可以自动激发一些操作,比如监听在线的用户的数量。
2.常见的监听器
1)ServletContextAttributeListener
ServletContextAttributeListener监听对ServletContext属性的操作,比如增加、删除、修改属性。
ServletContextListener监听ServletContext对象。
当创建ServletContext时,激发contextInitialized(ServletContextEvent sce)方法;
当销毁ServletContext时,激发contextDestroyed(ServletContextEvent sce)方法。
2)HttpSessionListener
HttpSessionListener监听HttpSession的操作:
当创建一个Session时,激发sessionCreated(HttpSessionEvent se)方法;
当销毁一个Session时,激发sessionDestroyed(HttpSessionEvent se)方法。
3)HttpSessionAttributeListener
HttpSessionAttributeListener监听HttpSession中的属性的操作:
当在Session增加一个属性时,激发attributeAdded(HttpSessionBindingEvent se)方法;
当在Session删除一个属性时,激发attributeRemoved(HttpSessionBindingEvent se)方法;
当在Session属性被重新设置时,激发attributeReplaced(HttpSessionBindingEvent se) 方法。
3.案例
目标:某网站在线人数统计
1)新建一个web项目

2)创建CountUtils和ListenerTest类并编写代码


3)配置web.xml

4)编写jsp页面


5)运行代码并访问(两个人同时访问)

本文介绍了Servlet监听器的概念,包括ServletContextAttributeListener、HttpSessionListener和HttpSessionAttributeListener等常见类型的监听器,以及它们在监听各种操作时触发的方法。通过监听器,可以实现自动化的操作,如统计网站在线人数。文中提供了一个具体的案例,详细说明了如何创建和配置监听器来实现这一功能,涉及web.xml配置、CountUtils和ListenerTest类的编写,以及JSP页面的使用。
492





