与session相关的listener接口简介

 
1 HttpSessionAttributeListener : 当一对象被放入session 时触发或从session中移除时触发相应的事件。
 相应的方法:
Void attributeAdded(HttpSessionBindingEvent e);//当对象被增加到一个session中时,会执行此方法
Void attributeRemoved(HttpSessionBindingEvent e); //当对象从一个session中移除时,会执行此方法
 
Void attributeReplaced(HttpSessionBindingEvent e); //当对象替换出一个session时,会执行此方法
 
 
变量HttpSessionBindingEvent e有如下方法:
 getSession();
 getName();
 Object getValue();
 
 我们可以编写一个实现了HttpSessionAttributeListener的类,并重写三个方法。在方法中我们可以通过HttpSessionBindingEvent e参数获取当前的session;被添加/移除/替换的属性的名称;以及相应的值,需要注意的是getValue返回的是Object类型的对象。(对于attributeReplaced中使用HttpSessionBindingEvent获得的值是旧值还是新值,我还不太清楚,知道的说下啊)
 
 
2 HttpSessionBindingListener: 当一个实现了此接口的对象被加入到session中或被移除时相应的事件就会被触发。
   相应的方法:
Void valueBound(HttpSessionBindingEvent e);//当实现了本接口的类的对象被增加到session中时,执行对象的此方法
Void valueUnbound (HttpSessionBindingEvent e); //当实现了本接口的类的对象被移除出session中时,执行对象的此方法
 
**1和2的区别在于: 第二个不需要在web.xml中进行配置。   
  
3 HttpSessionListener:当一个session被创建或销毁时会执行相应的事件
 
 相应的方法:
 Void SessionCreated(HttpSessionEvent e)
Void SessionDestroyed(HttpSessionEvent e)
HttpSessionEvent 有如下方法:
 getSession().
4 HttpSessionActivationListener :用于分布式服务中,当会话被激活时调用相应的事件。
 
**将Listener增加到程序中的方法:
在web.xml中增加listener标签即可:
<listener>
<listener-class>
YOUR_CLASS_NAME
</listener-class>
</listener>
<listener>
<listener-class>
YOUR_CLASS_NAME
</listener-class>
</listener>
 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值