当前位置: 技术问答>java相关
一个jsp做的网站,怎么统计当前在线的人数?
来源: 互联网 发布时间:2015-10-01
本文导语: 是不是应该统计当前的session数?可是怎么统计呢? | session是单个用户会话,应该是application.运用javabean,网上有很多例子。 | package com.demo; import javax.servlet.http.HttpSessionEvent; import javax....
是不是应该统计当前的session数?可是怎么统计呢?
|
session是单个用户会话,应该是application.运用javabean,网上有很多例子。
|
package com.demo;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class SessionCounter
implements HttpSessionListener
{
private static int activeSessions = 0;
public SessionCounter()
{
}
public void sessionCreated(HttpSessionEvent se)
{
activeSessions++;
}
public void sessionDestroyed(HttpSessionEvent se)
{
if(activeSessions > 0)
activeSessions--;
}
public static int getActiveSessions()
{
return activeSessions;
}
}
在web.xml加入:
com.demo.SessionCounter
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class SessionCounter
implements HttpSessionListener
{
private static int activeSessions = 0;
public SessionCounter()
{
}
public void sessionCreated(HttpSessionEvent se)
{
activeSessions++;
}
public void sessionDestroyed(HttpSessionEvent se)
{
if(activeSessions > 0)
activeSessions--;
}
public static int getActiveSessions()
{
return activeSessions;
}
}
在web.xml加入:
com.demo.SessionCounter
|
session是客户端连接时才得到,但如果客户关了浏览器,服务器怎么知道呢,接用一种通用做法,在一定时间内客户没有再连接,算作客户已离线。