/**
* 編寫以下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檢查是否顯示正確。
本程式在freebsd resin2.0.4下調試成功,請多多指教。
來源:http://www.kai001.com/computer-application-potpourri/potpourri11975.html