利用HttpSessionListener统计在线人数

编写以下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>  

Friskit

继续阅读此作者的更多文章