利用HttpSessionListener统计在线人数

80酷酷网    80kuku.com

  

  JSP显示在线人数代码

  编写以下SessionCounter.java 并编译为SessiionCounter.class 然后放到你的网站的classpath的 SessionCount(自己建立此目录)下面

package SessionCount;
import javax.servlet.*;
import javax.servlet.http.*;
public class SessionCounter implements HttpSessionListener {
private static int activeSessions = 0;
public void sessionCreated(HttpSessionEvent se) {
activeSessions++;
}
public void sessionDestroyed(HttpSessionEvent se) {
if(activeSessions > 0)
activeSessions--;
}
public static int getActiveSessions() {
return activeSessions;
}
}

  接着建立online.jsp文件用于显示在线人数

<% page import="SessionCount.SessionCounter" %>

  在线:

<%= SessionCounter.getActiveSessions() %>

  然后需要在你的网站的WEB-INF中建立web.xml 文件内容如下:

<!-- Web.xml -->
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2.3.dtd">
<web-app>
<!-- Listeners -->
<listener>
<listener-class>
SessionCount.SessionCounter
</listener-class>
</listener>
</web-app>

  然后重新启动你的应用服务器,访问online.jsp检查是否显示正确。



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: