使用 HttpSessionListener 补偿“浏览器缓存凭据”

 

浏览器会缓存用户凭据并经常自动将它们重新发送到服务器。这样,即使退出或超时,WebLogic Server 会话也不会受到破坏。可以只缓存当前浏览器会话的凭据,也可以缓存多个浏览器会话的凭据,具体取决于浏览器。

可以通过创建实现 javax.servlet.http.HttpSessionListener 接口的类来验证 WebLogic Server 的会话是否受到了破坏。如果 Web 应用程序中的活动会话列表发生改变,则会通知该接口的实现。要接收通知事件,必须在 web.xml 中的 Web 应用程序部署描述符中配置实现类。

要配置会话监听器类,请执行下列操作:

  1. 打开 Web 应用程序的 web.xml 部署描述符,您将在文本编辑器中为该描述符创建会话监听器类。web.xml 文件位于 Web 应用程序的 WEB-INF 目录中。
  2. 添加使用 web.xml 部署描述符的监听器元素的事件声明。事件声明可定义当事件发生时要调用的事件监听器类。例如:

    <listener>
    <listener-class>myApp.MySessionListener</listener-class>
    </listener>

    有关其他信息和依次准则,请参阅 配置事件监听器类

编写并部署会话监听器类。清单 3-4 中显示的示例使用简单计数器跟踪会话计数。

清单 3-4 跟踪会话计数
package myApp;
import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.HttpSessionEvent;
public class MySessionListener implements HttpSessionListener {
       private static int sessionCount = 0;

public void sessionCreated(HttpSessionEvent se) {
sessionCount++;
//写入日志或执行其他处理。
       public void sessionDestroyed(HttpSessionEvent se) {
if(sessionCount > 0)
sessionCount--;
//写入日志或执行其他处理。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值