首先要创建httpSessionBindingListener类,然后将其实例化,通过session.setAttribute("listener",listener)绑定到session里面。这样,每当session有绑定用户或者解绑定时,listener就会监听到变化,并且执行相应的方法。由于监听的范围可以无限大,所以在监听类里面可以限定响应范围。如监听用户登录情况登录数量变化,
public class User implements HttpSessionBindingListener(){
private String name;
private UserList ul=UserList.getInstance();
public User(){}
public User(String name){
this.name=name;
}
pulbic void setName(){
this.name=name;
}
public String getName(){
return this.name;
}
public void valueBond(HttpSessionBindingEvent event){
ul.addUser(name);
}
public void valueUnbound(HttpSessionBindingEvent event){
ul.removeUser(name);
}
这个listener监听器如果收到变化,其动作对象就制定了是name和userList。