https://www.cnblogs.com/chao555/p/9573102.html

1.创建自定义的拦截器并实现HandlerInterceptor接口

package com.demo.common.interceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView; public class MyInterceptor implements HandlerInterceptor{ Logger logger = LoggerFactory.getLogger(MyInterceptor.class); @Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
logger.info("preHandle :" +request.getContextPath());
HttpSession session = request.getSession();
if (session.getAttribute("user") != null)
return true; // 跳转登录
String url = request.getContextPath() + "/login";
response.sendRedirect(url);
return true;
} @Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception { } @Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
throws Exception { } }
2.创建一个java类继承WebMvcConfiguraeAdapter并重写addInterceptor方法(该类用来添加配置拦截器在该类中添加配置拦截器,以及配置过滤)
package com.demo.common.interceptor;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; @Configuration
public class AddInterceptor extends WebMvcConfigurerAdapter{ public void addInterceptors(InterceptorRegistry registry){
registry.addInterceptor(new MyInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/login")
.excludePathPatterns("/loginPost");
}
}

最新文章

  1. JQuery动画队列问题
  2. Centos网络配置
  3. sqlmap常用技巧
  4. jqurey datatable mRender FnRender 不起作用问题
  5. python--day2--基础数据类型与变量
  6. Sensor(PROXIMITY)
  7. 我要崩溃了,要解出这么一段js代码背后的东西,这真是一坨啊,别被高度欺骗了,他还有宽度!!!!!试着按下方向右键
  8. 创建oracle 密码文件
  9. 大数据学习之hadoop伪分布式集群安装(一)公众号undefined110
  10. runtime 运行时机制 完全解读
  11. dia 在Linux(ubuntu)下无法输入中文的解决办法 .
  12. Cocos2d-X采用CCScrollView创建滚动视图
  13. easyui datagrid分页参数获取
  14. TP框架数据库操作(增删改)
  15. python for循环巧妙运用(迭代、列表生成式)
  16. linux中find命令高级用法
  17. RHEL 6.4 通过mysql安装文件安装mysql
  18. Core Animation-1:图层树
  19. 利用 Settings Sync 同步vs code配置
  20. 关于 Java 中的 Null

热门文章

  1. shell 字符串转数组
  2. js操作表格、table、
  3. NULL与nullptr
  4. JavaScript初探系列(十)——Event
  5. 剑指offer:把数组排成最小的数
  6. TF 保存模型为 .pb格式
  7. jdk8 stream实现sql单表select a,b,sum(),avg(),max() from group by a,b order by a,b limit M offset N及其性能
  8. pandas.DataFrame.dropna删除缺失值
  9. t5_sumdoc.txt
  10. linux centos编译安装php7.3