欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

jsp简单实现统计在线人数,jsp统计在线人数,通过重写HttpSess

来源: javaer 分享于  点击 32001 次 点评:192

jsp简单实现统计在线人数,jsp统计在线人数,通过重写HttpSess


通过重写HttpSessionListener接口实现```java//session操作类public class SessionMap {

 private static Map<String,HttpSession> sesMap = new HashMap<String,HttpSession>(); private static final Object flag = new Object(); private SessionMap(){ } private static class MapUtilsN{     private static SessionMap sessionMap = new SessionMap(); } public static SessionMap getInstance(){     return MapUtilsN.sessionMap; } public void addMap(String sessionId,HttpSession session){     synchronized (flag) {         if(!sesMap.containsKey(sessionId)){             sesMap.put(sessionId, session);         }     } } public void removeMap(String sessionId){     synchronized (flag) {         sesMap.remove(sessionId);     } } public int getSize(){     synchronized (flag) {         return sesMap.size();     } } public HttpSession getSession(String key){     synchronized (flag) {         return sesMap.get(key);     }  }

}

//监听session创建及销毁public class MySessionListner implements HttpSessionListener{

public void sessionCreated(HttpSessionEvent arg0) { SessionMap.getInstance().addMap(arg0.getSession().getId(), arg0.getSession()); }

public void sessionDestroyed(HttpSessionEvent arg0) { SessionMap.getInstance().removeMap(arg0.getSession().getId()); }

}

```xml//web.xml中配置监听器<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5"  xmlns="http://java.sun.com/xml/ns/javaee"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list>  <!-- 配置监听器 -->  <listener>        <listener-class>          practice.listner.MySessionListner        </listener-class>    </listener>   <!-- 设置session超时时间 -->  <session-config>   <session-timeout>10</session-timeout>  </session-config></web-app>
相关栏目:

用户点评