如题

解决方案 »

  1.   

    在数据库中保存用户登录时的“sessionid” 和 “请求时间”
    用户每次操作时都更新 “请求时间”
    如果“请求时间”在session过期时间内没更新,说明用户不在线
    根据用户的在线情况就可以知道在线人数了
      

  2.   

    1、用户在线,常时间不操作电脑,-------算在线    把session过期时间设置为0
    2、用户刚登录系统,意外掉电退出-----算不在线   应该是做不到的
      

  3.   

    用JS写个心跳,可以简单验证自己的
    function checkSession(){ 
    if(<%=session.getAttribute("xxx")%>==null){ 
    alert("session失效"); 

    else
    alert("session成功"); 
    setTimeout("checkSession()",2000); 
    }想验证其他用户,java本身有对session的监听技术 
    可参考:http://www.javaresearch.org/article/showarticle.jsp?column=106&thread=25340
    难点就在于突发下线、关机。不能立刻监听出来,有一段时间的延迟