SpringBoot17 之Interceptor
来源:互联网 发布:淘宝潮牌 编辑:程序博客网 时间:2024/06/06 04:50
实现自定义拦截器只需要3步:
1、创建我们自己的拦截器类并实现 HandlerInterceptor 接口。
2、创建一个Java类继承WebMvcConfigurerAdapter,并重写 addInterceptors 方法。
2、实例化我们自定义的拦截器,然后将对像手动添加到拦截器链中(在addInterceptors方法中添加)
public class MyInterceptor1 implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
System.out.println(“>>>MyInterceptor1>>>>>>>在请求处理之前进行调用(Controller方法调用之前)”);
return true;// 只有返回true才会继续向下执行,返回false取消当前请求
}
@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { System.out.println(">>>MyInterceptor1>>>>>>>请求处理之后进行调用,但是在视图被渲染之前(Controller方法调用之后)");}@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { System.out.println(">>>MyInterceptor1>>>>>>>在整个请求结束之后被调用,也就是在DispatcherServlet 渲染了对应的视图之后执行(主要是用于进行资源清理工作)");}
}
public class MyInterceptor2 implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
System.out.println(“>>>MyInterceptor2>>>>>>>在请求处理之前进行调用(Controller方法调用之前)”);
return true;// 只有返回true才会继续向下执行,返回false取消当前请求
}
@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { System.out.println(">>>MyInterceptor2>>>>>>>请求处理之后进行调用,但是在视图被渲染之前(Controller方法调用之后)");} @Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { System.out.println(">>>MyInterceptor2>>>>>>>在整个请求结束之后被调用,也就是在DispatcherServlet 渲染了对应的视图之后执行(主要是用于进行资源清理工作)");}
}
@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter {
@Override
public void addInterceptors(InterceptorRegistry registry) {
// 多个拦截器组成一个拦截器链
// addPathPatterns 用于添加拦截规则
// excludePathPatterns 用户排除拦截
registry.addInterceptor(new MyInterceptor1()).addPathPatterns(“/**”);
registry.addInterceptor(new MyInterceptor2()).addPathPatterns(“/**”);
super.addInterceptors(registry);
}
}
- SpringBoot17 之Interceptor
- struts2 之 Interceptor
- struts2 -----interceptor 之 ActionInvocation 意义
- Struts之拦截器---interceptor
- openfire 插件开发 之interceptor
- Flume NG之Interceptor简介
- SpringBoot之Interceptor拦截器
- 5. Struts2框架之 Interceptor
- SpringMVC之Interceptor拦截器
- SpringMVC之interceptor拦截器
- springboot实战之注册interceptor
- interceptor
- interceptor
- interceptor
- interceptor
- interceptor
- interceptor
- struts2 -- interceptor(如何配置stuts2.xml之Interceptor)
- hdoj2002
- 【小梅哥FPGA进阶教程】第九章 基于串口猎人软件的串口示波器
- Oracle trunc()函数的用法
- 阿里java规范整理
- 素数求和
- SpringBoot17 之Interceptor
- TextView具备长按编辑功能,返回键可保存当前编辑内容
- TinyPNG---一个压缩PNG的神站
- 线段树 单点增减/替换,区间查询
- redis之lpush、rpush、lset、lrem
- 数组、链表、堆栈和队列
- 排列平方数
- 处理AppCompatActivity中openOptionsMenu方法无效的问题
- 使用IntelliJ IDEA 配置Maven(入门)