求助:JSP版 基于数据库的在线人数统计???原代码????分不够可加!!!!思路也行。

解决方案 »

  1.   

    application来保存在线人数
    判断session
      

  2.   

    一张表,一个字段。
    做一个Session监听,来一个人把这个字段+1,走一个人减1。
    不过只是为了统计在线人数...基于数据库...有这个必要吗?
      

  3.   

    可以单独把统计做一个静态类里面写一对基于在线人数(一般INT足够了)写个SESSION监听器   当SESSION CREATE时,调用这个类的SET方法  即:加一SESSION DESTORY时:减一不过 当用户非法退出网站时,系统无法监听到SESSION状态所有网站几乎都存在这个问题吧~不过可以通过其他方法弥补
      

  4.   

    可用newxy技术,newxy对访问计数提供了极其多样灵活的方法.
    方法一,利用newxy的标签<nbean:count/>,见http://www.newxy.net/doc.jsp#anchor13.2.5
    方法二,建一个Session监听,当产生一新会话时,调用下面语句:
        net.newxy.util.Count.getInstance().add(session.getId(),"人次",tableName,titleField,countField);在表的titleField字段中记录"人次",在countField字段中记录访问次数.
        但会话过期时,调用下面语句:
        net.newxy.util.Count.getInstance().removeSessionId(session.getId());
    得到在线人数:
        Integer count=net.newxy.util.Count.getSessionCount();
        数据中保存的是访问总人次
              select countField from tableName    将访问计数保存到数据库中是由一个线程每隔一分钟执行一次.    特别说明:方法二在newxy的技术文档中尚未提及.    newxy技术网站:http://www.newxy.net
      

  5.   

    在jsp页面上提数取在线人数:在线人数:
    <%
        net.newxy.util.Count.getSessionCount().toString();
    %>newxy技术网站:http://www.newxy.net
      

  6.   

    用application设置个属性专门保存就可以了,不用存。一般情况都不用操作数据库保存在线人数
      

  7.   

    DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDd
      

  8.   

    做一个Session监听,来一个人加入数据库,走一个人三产记录
      

  9.   

    监听 Session绑定 implements HttpSessionBindingListener
    用户登陆事件: 
     public void valueBound(HttpSessionBindingEvent event);
    用户退出事件: 
     public void valueUnbound(HttpSessionBindingEvent event);