📄 usertrace.java
字号:
/*
* Session代表客户的会话过程,客户登录时,往Session中传入一个对象
* 即可跟踪客户的会话。在Servlet中,传入Session的对象如果有一个
* 实现HttpSessionBindingListener接口的对象(方便起见,此对象称为监听器)
* 则在传入的时候(即调用HttpSession对象的setAttribute方法的时候)和
* 移去的时候(即调用HttpSession对象的removeAttribute方法的时候或
* Session Time out的时候)Session对象会自动调用监听器的valueBound和
* valueUnbound方法(这是HttpSessionBindingListener接口中的方法)。
*/
package oa.sys;
import javax.servlet.http.HttpSessionBindingEvent;
/**
****************************************************
*类名称: UserTrace<br>
*类功能: 用户再线方案<br>
*创建: 2008年4月3日<br>
****************************************************
*/
public class UserTrace
implements javax.servlet.http.HttpSessionBindingListener {
private int id;
private UserList container = UserList.getInstance();
public UserTrace(){
id=0;
}
/***************************************************
*函数名称:setId()<br>
*函数功能:设置在线监听<br>
*返回值: 无<br>
*参数说明:int id<br>
****************************************************/
public void setId(int id) {
this.id = id;
}
/***************************************************
*函数名称:getId()<br>
*函数功能:获取在线监听<br>
*返回值: int id<br>
*参数说明:无<br>
****************************************************/
public int getId() {
return this.id;
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSessionBindingListener#valueBound(javax.servlet.http.HttpSessionBindingEvent)
*/
public void valueBound(HttpSessionBindingEvent arg0) {
System.out.println(new Time().getYMDHMS()+" 上线 "+this.id);
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSessionBindingListener#valueUnbound(javax.servlet.http.HttpSessionBindingEvent)
*/
public void valueUnbound(HttpSessionBindingEvent arg0) {
System.out.println(new Time().getYMDHMS()+" 下线 "+this.id);
if (id != -1) {
container.removeUser(id);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -