Listener监听器 -案例

案例 - 自定义类实现监听器接口并重写相关方法

<1>自定义类实现监听器接口并重写相关的方法 - 代码框架

public class OnlineUser implements HttpSessionListener,ServletContextListener {

    ServletContext ctx = null;
    // 初始化ServletContext
    public void contextInitialized(ServletContextEvent e) {
        ctx = e.getServletContext();
    }
    // 销毁ServletContext
    public void contextDestroyed(ServletContextEvent e) {
        //将ServletContext设置成null;
    }
    // 当新创建一个HttpSession对象时
    public void sessionCreated(HttpSessionEvent e) {
        //将当前的在线人数加上1,并且保存到ServletContext(application)中
    }
    // 当一个HttpSession被销毁时(过期或者调用了invalidate()方法)
    public void sessionDestroyed(HttpSessionEvent e) {
        //将当前人数减去1,并且保存到ServletContext(application)中
    }
}    

<2>在web.xml中配置监听器

<listener>
    <listener-class> com.lagou.listener.OnlineUser </listener-class>
</listener>

<3> 代码实现:
OnlineUser.java, 统计当前在线的人数

 

 

 

练习题

 

 

原文地址:https://www.cnblogs.com/JasperZhao/p/15403192.html