Springmvc拦截器简单使用以及session超时跳转
来源:互联网 发布:怎么用淘宝微淘 编辑:程序博客网 时间:2024/06/06 03:10
1.在web.xml中加入session超时失效设置:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
2.在Spring-mvc(Spring配置文件中)加入
<!--配置拦截器 -->
<mvc:interceptors>
<mvc:interceptor>
<!-- 拦截所有URL -->
<mvc:mapping path="/**"/>
<bean class="com.bigdata.fxzcbx.common.loginIntercepter"></bean>
</mvc:interceptor>
</mvc:interceptors>
<mvc:default-servlet-handler/>
3.然后loginIntercepter 中implements(实现) HandlerInterceptor
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o) throws Exception {
SysUser sysUser = (SysUser) request.getSession().getAttribute("SESSION_SYS_USER");
String requestUri = request.getRequestURI();
if(request.getUserPrincipal()!=null){
return true;
}
String totalUrl=String.valueOf(request.getRequestURL());
if (sysUser == null) {
//设置session超时状态发送ajax请求时需要判断该参数也就是超时跳转需要用到
response.addHeader("sessionstatus", "timeOut");
System.out.println("========totalUrl:"+totalUrl+"============");
if("/ACM/user/login".equals(requestUri)){return true;}
response.sendRedirect("/ACM/user/login");
return false;
}
return true;
}
4.前台jsp页面加入
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<c:set var="serverUrl" value="${pageContext.request.requestURL}"/>
<!--发送ajax请求的时候判断session是否有效-->
<script type="text/javascript">
$(document).ajaxComplete(function(event, xhr, settings) {
var url="${serverUrl}";
if(xhr.getResponseHeader("sessionstatus")=="timeOut"){
if(url.indexOf("127.0.0.1")>=0||url.indexOf("localhost")>=0){
window.location.href="${ctx}/user/login";
}
else{
window.location.href="${ctx}/user/login_cas";
}
}
});
</script>
是标红部分相对应的
ok这样就大功告成了!
- Springmvc拦截器简单使用以及session超时跳转
- SpringMVC中Session超时拦截器配置
- SpringMVC中Session超时拦截器配置
- springmvc和struts2拦截器的简单使用以及配置
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- SpringMVC拦截器简单使用
- angular js 与 springmvc 实现session 超时拦截
- SpringMVC拦截器之拦截跳转页面
- springMVC 拦截器session控制
- springMVC 拦截器session控制
- 关于拦截器和过滤器以及实现国际化和session超时验证
- 根据接口获取图片的无限轮播,带小圆点+Listview
- iOS安全攻与防(总篇)
- ssh 免密码设置失败原因总结
- 搭建并多端口共享ipv4&ipv6ss服务端,实现校园网免流量
- SCUT Training 20170913 Problem K
- Springmvc拦截器简单使用以及session超时跳转
- 鸡肋代码
- 设计模式之:单例模式
- Git
- 企业如何预防「意外掉电」带来的数据安全威胁?
- c/c++中#include <>与#include""区别
- OnSize、OnSizing和OnGetMinMaxInfo区别分析
- hive 函数
- [C#] Direct2D 学习笔记 (一)vb.net转换为c#