在路上

 找回密码
 立即注册
在路上 站点首页 学习 查看内容

详解springmvc控制登录用户session失效后跳转登录页面

2017-3-7 12:50| 发布者: zhangjf| 查看: 1374| 评论: 0

摘要: springmvc控制登录用户session失效后跳转登录页面,废话不多少了,具体如下: 第一步,配置 web.xml session-config session-timeout15/session-timeout /session-config 复制代码 第二步,配置spring-mvc.xml ...

springmvc控制登录用户session失效后跳转登录页面,废话不多少了,具体如下:

第一步,配置 web.xml

  1. <session-config>
  2. <session-timeout>15</session-timeout>
  3. </session-config>
复制代码

第二步,配置spring-mvc.xml

  1. <!-- Session失效拦截 -->
  2. <mvc:interceptors>
  3. <!-- 定义拦截器 -->
  4. <mvc:interceptor>
  5. <!-- 匹配的是url路径, 如果不配置或/**,将拦截所有的Controller -->
  6. <mvc:mapping path="/**" />
  7. <!-- 不需要拦截的地址 -->
  8. <mvc:exclude-mapping path="/login.do" />
  9. <bean class="com.cm.contract.controller.annotation.GEISSSessionTimeoutInterceptor"></bean>
  10. </mvc:interceptor>
  11. </mvc:interceptors>
复制代码

第三步,写拦截器SystemSessionInterceptor 方法

  1. public class SystemSessionInterceptor implements HandlerInterceptor {
  2. private static final String LOGIN_URL="/jsp/sessionrun.jsp";
  3. @Override
  4. public void postHandle(HttpServletRequest request,
  5. HttpServletResponse response, Object handler,
  6. ModelAndView modelAndView) throws Exception {
  7. }
  8. @Override
  9. public void afterCompletion(HttpServletRequest request,
  10. HttpServletResponse response, Object handler, Exception ex)
  11. throws Exception {
  12. }
  13. @Override
  14. public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
  15. Object handler) throws Exception {
  16. HttpSession session=request.getSession(true);
  17. //session中获取用户名信息
  18. Object obj = session.getAttribute(CMConstant.LOGINUSER);
  19. if (obj==null||"".equals(obj.toString())) {
  20. response.sendRedirect(request.getSession().getServletContext().getContextPath()+LOGIN_URL;
  21. return false;
  22. }
  23. return true;
  24. }
复制代码

第五步,配置友情提示页面sessionrun.jsp

  1. <body>
  2. <SCRIPT language="JavaScript">
  3. alert("用户已在其他地方登陆,请重新登录。");
  4. setTimeout(function () {
  5. window.top.location.href="<%=path%>/index.jsp";
  6. },2000);
  7. </script>
  8. </body>
复制代码

到此 springMvc拦截session失效后处理方式结束。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持程序员之家。

最新评论

小黑屋|在路上 ( 蜀ICP备15035742号-1 

;

GMT+8, 2025-5-4 02:45

Copyright 2015-2025 djqfx

返回顶部