java html实现会话过期,怎么实现不刷新页面时的session超时控制

如何实现不刷新页面时的session超时控制

当有提交请求处理的时候,可以用拦截器或者过滤器实现超时监听

我现在想实现,页面无刷新,使用js计数器控制页面超时

每次鼠标单击都重新赋值计时器为0

若长时间没有点击鼠标,超时点击之后跳转到login.jsp

又没有示例代码呢?

新手锻炼,麻烦各位大神指教

------解决思路----------------------

首先保证设置session的过期时间

然后在页面上进行定时无状态刷新,判断session中(比如)用户名,如果为空则跳转,这样的话不需要点鼠标也可以自动跳转

给你个demo

pageEncoding="UTF-8"%>

/newtouch/default/css/tab.css"

type="text/css" />

/**

* 定时刷新div 并监测session如果发生变化中则跳转到登录页面

*/

setInterval(function(){

$("#dingshi").load(location.href+" #dingshi>*","");

var un = $("#user_namejc").val();

if(un==""){

location.href = '/login';

}

}, 1000);

------解决思路----------------------

我用的是SSH框架l配置的监视器:  1.web.xml文件  

com.dwg.FilterAndListener.SessionListener

2.写的类 :package com.dwg.FilterAndListener;

import javax.servlet.http.*;

public class SessionListener implements HttpSessionListener {

//private ServletContext context = null;//servlet上下文

public void sessionCreated(HttpSessionEvent event) {

//因为创建session没有动作,所以这个方法就可以不写了

System.out.println("----创建session-----");

}

public void sessionDestroyed(HttpSessionEvent event) {

//监听session,当session过期后,就转道登陆页面

System.out.println("----session失效-----");

//    if (context == null)

//      storeInServletContext(event);

}

//    private void storeInServletContext(HttpSessionEvent event) {

//    HttpSession session = event.getSession();

//    context = session.getServletContext();

//    context.setAttribute("sessionCounter", this);

//}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值