监听器

实现一个监听器接口:有N种

1:编写一个监听器

 1 // 统计网站在线人数:统计session
 2 public class OnlineCountListener implements HttpSessionListener {
 3 
 4     // 创建session的监听:看你的一举一动
 5     // 一旦创建一个session就会触发一次这个事件
 6     @Override
 7     public void sessionCreated(HttpSessionEvent se) {
 8         ServletContext ctx = se.getSession().getServletContext();
 9         System.out.println(se.getSession().getId());
10         Integer onlineCount = (Integer) ctx.getAttribute("OnlineCount");
11         if (onlineCount == null) {
12             onlineCount = new Integer(1);
13         } else {
14             int count = onlineCount.intValue();
15             onlineCount = new Integer(count + 1);
16         }
17         ctx.setAttribute("OnlineCount",onlineCount);
18 
19     }
20     // 销毁session的监听
21     // 一旦销毁一个session就会触发一次这个事件
22     @Override
23     public void sessionDestroyed(HttpSessionEvent se) {
24         ServletContext ctx = se.getSession().getServletContext();
25         Integer onlineCount = (Integer) ctx.getAttribute("OnlineCount");
26         if (onlineCount == null) {
27             onlineCount = new Integer(0);
28         } else {
29             int count = onlineCount.intValue();
30             onlineCount = new Integer(count - 1);
31         }
32         ctx.setAttribute("OnlineCount",onlineCount);
33 
34     }
35 
36 
37     /*
38     * session销毁:
39     * 1)手动销毁
40     * 2)自动销毁,去web.xml去配置session过期时间
41     *
42     *
43     * */
44 
45 
46 
47 }

2:web.xml中注册监听器

1 <!--    注册监听器,用的越来越少-->
2     <listener>
3         <listener-class>com.mine.listener.OnlineCountListener</listener-class>
4     </listener>

3:看情况是否使用(几乎不用)

原文地址:https://www.cnblogs.com/YXBLOGXYY/p/14691091.html