社区
Web 开发
帖子详情
用HttpSessionListener如何显示在线用户列表
jk3278jk
2004-03-29 12:04:08
现在正在做一个用户在线列表(已登陆),想用HttpSessionListener接口实现。
但发现好像HttpSessionListener只能统计在线人数。
不知有什么方法能实现? 就像聊天室里的那个在线列表一样的。
谢谢!!
...全文
316
14
打赏
收藏
用HttpSessionListener如何显示在线用户列表
现在正在做一个用户在线列表(已登陆),想用HttpSessionListener接口实现。 但发现好像HttpSessionListener只能统计在线人数。 不知有什么方法能实现? 就像聊天室里的那个在线列表一样的。 谢谢!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
duan123
2004-04-01
打赏
举报
回复
package SessionCounter;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import com.oztime.right.UserObject;
public class SessionCounter implements HttpSessionListener {
private static int activeSessions = 0;
private static Vector v= new Vector();
public void sessionCreated(HttpSessionEvent se) {
}
public static void createsession(HttpSessionEvent se ) {
UserObject user1 =(UserObject)se.getSession().getAttribute("UserObject");
if(v.contains(user1)==false){
v.add(user1);
activeSessions++;
System.out.println("===================用户名称=================="+user1.getName());
System.out.println("===================用户数量=================="+activeSessions);
}
}
public void sessionDestroyed(HttpSessionEvent se) {
System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");
UserObject user2=(UserObject)se.getSession().getAttribute("UserObject");
if(v.contains(user2)==true){
v.remove(user2);
activeSessions--;
System.out.println("===================removed=================="+user2.getName());
}
}
public static void Destroysession(UserObject user) {
//System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");
//UserObject user3=(UserObject)se.getSession().getAttribute("UserObject");
System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"+user.getName());
if(v.contains(user)==true){
v.removeElement(user);
activeSessions--;
System.out.println("====================================="+user.getName()+"---退出登录!!!");
}
}
public static int getActiveSessions() {
return activeSessions;
}
public static Vector getVector() {
return v;
}
}
jk3278jk
2004-04-01
打赏
举报
回复
没人理
jk3278jk
2004-04-01
打赏
举报
回复
这么简单的问题没人会吗?
jk3278jk
2004-04-01
打赏
举报
回复
哦,原来是这样。 谢谢!
程序写的不错!好。!
duan123
2004-04-01
打赏
举报
回复
你的疑问是对的
public static void createsession(HttpSessionEvent se ) {
UserObject user1 =(UserObject)se.getSession().getAttribute("UserObject");
这个方法是自定义的
是在用户登陆后调用的
SessionCounter.createsession(new HttpSessionEvent(session));
jk3278jk
2004-04-01
打赏
举报
回复
请教duanyuxy123 几个问题
public static void createsession(HttpSessionEvent se ) {
UserObject user1 =(UserObject)se.getSession().getAttribute("UserObject");
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
上面这行代码能否取得用户对象(UserObject)表示疑问???
因为此事件是session创建时产生的。你并没有对也不可能对session 赋值。你怎么获取? session刚建立,只有sessionID值其他均为空!!
if(v.contains(user1)==false){
v.add(user1);
activeSessions++;
System.out.println("====用户名称==============="+user1.getName());
System.out.println("====用户数量==============="+activeSessions);
}
}
能否说清楚一些??
再一个createsession好像不是HttpSessionListener的接口。你是如何使用的???
jk3278jk
2004-03-31
打赏
举报
回复
哦???
jk3278jk
2004-03-30
打赏
举报
回复
哦???
offsider
2004-03-30
打赏
举报
回复
www.1768.org 在线名单
jk3278jk
2004-03-29
打赏
举报
回复
to :swei412()
那应该怎么做? 还有什么接口能实现吗? 我要源码!
谢谢!!
swei412
2004-03-29
打赏
举报
回复
为什么一定要用HttpSessionListener呢
HttpSessionListener中有个sessionCreated(HttpSessionEvent se),在创建Session时被调用,所以要想在其中判断用户是否登陆比较难
jk3278jk
2004-03-29
打赏
举报
回复
谁使用application和session的做过聊天室? 如果做过那聊天室的话。这个问题就解决了
追求自由
2004-03-29
打赏
举报
回复
关注
jk3278jk
2004-03-29
打赏
举报
回复
没有人知道吗?
Spring boot通过
HttpSession
Listener
监听器统计
在线
人数的实现代码
在Spring boot中通过
HttpSession
Listener
监听器统计
在线
人数是一种常见的技术实现方式,适用于需要跟踪和管理
用户
会话状态的Web应用程序。以下是从给定文件中提炼的关键知识点。 首先,了解
HttpSession
Listener
接口...
day18 监听器 统计
在线
人数,定时销毁超时session,钝化活化session,
在线
列表
显示
和踢人功能防止
用户
自动登录,
在线
支付
在本主题“day18 监听器”中,我们将探讨如何利用监听器来统计
在线
人数、定时销毁超时session、实现session的钝化与活化,以及如何在系统中
显示
在线
用户
列表
和实现踢人功能,从而防止
用户
自动登录。同时,还会涉及...
判断
用户
是否
在线
和实时统计
在线
人数
接下来,"实时统计
在线
人数"则需要维护一个
在线
用户
列表
。这里用到了"vector对象的elements()方法",Vector是Java中的一个动态数组,它继承自ArrayList,支持同步操作,适合多线程环境。elements()方法返回一个...
Listener
单点登录与
显示
在线
用户
显示
在线
用户
功能则需要维护一个
用户
会话
列表
,这个
列表
可以存储在内存(例如使用ConcurrentHashMap)、数据库或者分布式缓存(如Redis)中。每当
用户
登录或登出时,
Listener
会更新这个
列表
,确保
列表
中只包含当前...
HttpSession
Listener
和
HttpSession
Binding
Listener
的区别 单点登录
- 使用`
HttpSession
Listener
`可以监控
用户
登录状态的变化,及时更新
在线
用户
列表
,从而确保各个子系统之间共享正确的
用户
状态信息。 - 通过`
HttpSession
Binding
Listener
`可以在
用户
登录时绑定必要的认证信息至会话中...
Web 开发
81,115
社区成员
341,737
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章