社区
Web 开发
帖子详情
用HttpSessionListener如何显示在线用户列表
jk3278jk
2004-03-29 12:04:08
现在正在做一个用户在线列表(已登陆),想用HttpSessionListener接口实现。
但发现好像HttpSessionListener只能统计在线人数。
不知有什么方法能实现? 就像聊天室里的那个在线列表一样的。
谢谢!!
...全文
347
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
打赏
举报
回复
没有人知道吗?
HttpSession
Listener
监听器实战
本文介绍了一种在Java Web应用中使用监听器跟踪
在线
用户
的方法。通过实现
HttpSession
Listener
接口,当
用户
开始或结束session时,可以记录并更新
在线
用户
列表
。文章提供了完整的代码示例,包括监听器类和用于
显示
在线
用户
信息的JSP页面。
用
HttpSession
Listener
与
HttpSession
Binding
Listener
实现
在线
人数统计
本文介绍了一个简单的JSP登录系统实现,包括登录、
显示
在线
用户
列表
及注销流程。通过使用
HttpSession
Listener
和
HttpSession
Binding
Listener
,实现了对session创建、销毁的监听,并更新
在线
用户
列表
。
java判断系统
在线
人数,java监听器之实现
在线
人数
显示
本文介绍了如何使用Java中的ServletRequest
Listener
、
HttpSession
Listener
来实现系统
在线
人数的统计。通过监听请求和会话的创建与销毁,跟踪Session ID和IP地址,动态更新服务器的
用户
列表
,从而实时
显示
在线
人数。
java监听
在线
人数_java监听器之实现
在线
人数
显示
本文介绍了如何使用Java的ServletRequest
Listener
、
HttpSession
Listener
、ServletContext
Listener
监听器来实现
在线
人数的
显示
。通过监听请求、会话创建和销毁,记录并更新
用户
列表
,从而统计
在线
用户
数量。监听器需要注册并在页面展示
用户
信息。
J2EE中统计当前
在线
人数——
HttpSession
Binding
Listener
和
HttpSession
Listener
本文深入探讨了
在线
用户
列表
的实现原理及应用,通过实例展示了如何利用Servlet API中的Session监听器接口(
HttpSession
Listener
和
HttpSession
Binding
Listener
)来实时监控
用户
的登录与退出操作,以及
在线
人数的变化情况。同时,介绍了如何将
用户
信息存储在ServletContext中以维护全局状态,最终通过简单的HTML表单实现
用户
登陆与
在线
人数的
显示
。
Web 开发
81,111
社区成员
341,727
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章