P to P

          何以解憂,唯有學習!讓每一個人都能Open Source
          posts - 4, comments - 12, trackbacks - 0, articles - 11
          今天在chinaitpower上看到這樣一篇文章,原文內容如下:
          /** 
          * 編寫以下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"
          "
          <web-app> 
          <!-- Listeners --> 
          <listener>
          <listener-class>
          SessionCount.SessionCounter
          </listener-class>
          </listener>
          </web-app> 






          試了一下,發出當用戶調用SessionCounter類時sessionCreated方法被執行,activeSessions加1,但是,關閉瀏覽時
          sessionDestroyed并沒有被執行,為什么呢,原因是因為關瀏覽器不一定會釋放session,所以,導致sessionDestroyed
          不會被執行,那么,有什么方法呢,退出頁面logout.jsp上,使用session.invalidate()釋放會話,那么sessionDestroyed
          也就被執行,在線人數也就相應的減1,或是設置session的不活動時間等等。

          Feedback

          # re: 對網上《HttpSessionListener統計在線人數 》一文做一下修改  回復  更多評論   

          2007-03-14 09:40 by Baggio
          謝謝
          主站蜘蛛池模板: 滨海县| 南澳县| 吴旗县| 长葛市| 竹山县| 沧州市| 巴中市| 太谷县| 栾川县| 黎平县| 阜城县| 东安县| 松桃| 类乌齐县| 天等县| 五华县| 宜都市| 淄博市| 青浦区| 肃北| 太白县| 封开县| 石台县| 池州市| 灵璧县| 沁水县| 高州市| 朝阳市| 大厂| 定南县| 屯留县| 衡阳县| 苏尼特右旗| 正镶白旗| 吉木萨尔县| 贵港市| 时尚| 靖宇县| 锡林郭勒盟| 衡阳市| 玉溪市|