============================================================================
原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。
请注明转自:http://yunjianfei.iteye.com/blog/
============================================================================
前段时间在做在线实时聊天系统,做了不少相关的例子,最近工作比较清闲,就慢慢发上来吧,附件里的例子是一个用ajax轮询,以及单例模式的一个list来存放在线用户,用HttpSessionBindingListener来绑定新创建的用户,一个session销毁时,list也会更新
下面是单例模式的list
package com.yunfei.bean;
import java.util.ArrayList;
import java.util.List;
public class UserList
{
private List list;
private static UserList instance = null;
// 以private的方式来声明构造方法,使得其他的类对象无法调用此类的构造函数
private UserList()
{
list = new ArrayList();
}
public static synchronized UserList getInstance()
{
if (instance == null)
{
instance = new UserList();
}
return instance;
}
public void addUser(User u)
{
if (u != null)
{
list.add(u);
}
}
public void removeUser(User u)
{
if (u != null)
list.remove(u);
}
public List getList()
{
return list;
}
}
下面的javaBean实现了HttpSessionBindingListener
package com.yunfei.bean;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionBindingListener;
public class User implements HttpSessionBindingListener {
private int id;
private String username;
private String password;
private User u;
public User getU() {
return u;
}
public void setU(User u) {
this.u = u;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
private UserList userList = UserList.getInstance();
public void valueBound(HttpSessionBindingEvent e) {
System.out.println("addUser: " + u.getUsername());
userList.addUser(u);
System.out.println(userList.getList());
}
public void valueUnbound(HttpSessionBindingEvent e) {
System.out.println("RemoveUser: " + u.getUsername());
userList.removeUser(u);
System.out.println(userList.getList());
}
}
废话不多说了,详细的自己看代码吧
相关推荐
NULL 博文链接:https://franciswmf.iteye.com/blog/1831974
NULL 博文链接:https://nopainnogain.iteye.com/blog/799596
基于HttpSessionBindingListener的登陆日志操作,记录登陆者的用户名,登录时间到数据库
jsp 统计在线人数实例,是个完整的项目实例,部署即可查看效果! 通过使用:HttpSessionListener、HttpSessionBindingListener来实现. valueBound 方法登录触发。 valueUnbound 方法退出触发。
HttpSessionListener 和HttpSessionBindingListener的区别 HttpSessionBindingListener单点登录。
程序开发中,经常需要对某些事件进行...6)创建用户登录后动态显示在线人数和在线用户列表的resultjsp页面, 7)配置web.xml相关映射, 8)启动服务器,在不同浏览器上访问index.jsp页面进行相关操作,查看页面动态数据。
基于Spring+Struts2+ibatis框架,利用 HttpSessionBindingListener接口进行监听,实现防止异地登录,配有全部代码及sql数据库表
10.3.3. 显示在线用户列表 10.4. 总结 11. 文件上传 11.1. 远程网盘 11.2. 浏览器部分的设置 12. 导出文件 12.1. 图片校验码 12.2. 图片校验码 - jsp版 13. 剖析el表达式 13.1. 再谈el(Expression Language) ...
当应用程序将对象存储到会话中或从会话中移除对象时 该会话将检查对象是否实现了 HttpSessionBindingListener 如果实现了 则 servlet 将通知该对象它已经被绑定到会话 或者已从会话中取消对它的绑定 通知是在绑定...
属性监听和bean监听的区别: 属性监听:是对三个容器中的任何属性(包括对象和不是对象的数据,基本...从使用上它不同于前面两个监听器的学习,但给我们的感觉就是一个属性监听的vip用户,这个vip用户是一个JavaBean
统计在线人数,是否登录过,小例子,用jsp/HttpSessionBindingListener实现 ,有需要的请猛击下载,无源码。要源码,地址:http://download.csdn.net/source/1845699
这份文档以及刚才提及的Javadoc格式的文档都描述了这两个软件包,Javadoc格式的文档还描述了你应该如何使用这两个软件包中的所有方法。 有关规范 你也许对下面的这些Internet规范感兴趣,这些规范将直接影响到...
9.2.4 httpsessionbindinglistener接口 328 9.2.5 在线人数统计程序 329 9.3 小结 335 第10章 servlet的异常处理机制 337 10.1 声明式异常处理 338 10.1.1 http错误代码的处理 338 10.1.2 java异常的处理 341 ...
9.2.4 httpsessionbindinglistener接口 328 9.2.5 在线人数统计程序 329 9.3 小结 335 第10章 servlet的异常处理机制 337 10.1 声明式异常处理 338 10.1.1 http错误代码的处理 338 10.1.2 java异常的处理 341 ...
9.2.4 httpsessionbindinglistener接口 328 9.2.5 在线人数统计程序 329 9.3 小结 335 第10章 servlet的异常处理机制 337 10.1 声明式异常处理 338 10.1.1 http错误代码的处理 338 10.1.2 java异常的处理 341 ...
9.2.4 httpsessionbindinglistener接口 328 9.2.5 在线人数统计程序 329 9.3 小结 335 第10章 servlet的异常处理机制 337 10.1 声明式异常处理 338 10.1.1 http错误代码的处理 338 10.1.2 java异常的处理 341 ...
JavaServer Faces(JSF)技术以及Java Web Services技术的学习 目录 第一章 安装执行环境 1-1 安装 J2SDK 1.4.2 1-2 安装 Tomcat 5.0.16 1-3 安装 JSPBook 站台范例 1-4 安装 Ant 1.6 第二章 Servlet 2.4 简介 2-1...
HttpSessionBindingListener HttpSessionContext HttpUtils RequestDispatcher Servlet ServletConfig ServletContext ServletException ServletInputStream ServletOutputStream ServletRequest Servlet...
HttpSessionBindingListener HttpSessionContext HttpSessionEvent HttpSessionListener HttpUtils RequestDispatcher Servlet ServletConfig ServletContext ServletContextAttributeEvent ...