监听器

监听器

实现一个监听器接口(有n种)
编写一个监听器

  1. 实现监听器接口

    //统计网站在线人数,统计session
    public class OnlineCountListener implements HttpSessionListener {
        //    创建session监听,查看你的一举一动
    //    一旦创建session,会自动执行下面的代码
        @Override
        public void sessionCreated(HttpSessionEvent se) {
            ServletContext sev = se.getSession().getServletContext();
            Integer username = (Integer) sev.getAttribute("username");
            if (username==null){
                username= new Integer(1);
            }else {
                int count = username.intValue();
                username = new Integer(count+1);
            }
            sev.setAttribute("username",username);
        }
    //一旦session销毁就会触发这个时间
        @Override
        public void sessionDestroyed(HttpSessionEvent se) {
            ServletContext sev = se.getSession().getServletContext();
    
            Integer username = (Integer) sev.getAttribute("username");
            if (username==null){
                username= new Integer(0);
            }else {
                int count = username.intValue();
                username = new Integer(count-1);
            }
            sev.setAttribute("username",username);
        }
        /*
        自动销毁:
        手动销毁:se.getSession().invalidate();
        *
        * */
    }
    
    
  2. 配置xml中监听器

    <listener>
        <listener-class>com.yt.listener.OnlineCountListener</listener-class>
    </listener>
    
    

    自动销毁:

    <session-config>
        <session-timeout>1</session-timeout>
    </session-config>
    
    
  3. 看情况是否使用

posted @ 2021-07-12 16:44  拒绝平庸*  阅读(60)  评论(0编辑  收藏  举报