1:MyInterceptor1、MyInterceptor2这2个拦截器都放行

MyInterceptor1......preHandle
MyInterceptor2......preHandle

MyInterceptor2......postHandle
MyInterceptor1......postHandle

MyInterceptor2......afterCompletion
MyInterceptor1......afterCompletion

preHandle执行顺序和拦截器放置顺序一致;postHandle、afterCompletion执行顺序和拦截器放置顺序相反

2:MyInterceptor1放行、MyInterceptor2不放行

MyInterceptor1......preHandle
MyInterceptor2......preHandle
MyInterceptor1......afterCompletion

MyInterceptor2不放行,MyInterceptor2的postHandle、afterCompletion方法不会执行
只要有一个拦截器不放行,postHandle方法不会执行

3:MyInterceptor1、MyInterceptor2这2个拦截器都不放行

MyInterceptor1......preHandle

MyInterceptor1不放行,MyInterceptor1的postHandle、afterCompletion方法不会执行
MyInterceptor1不放行,MyInterceptor2不会执行

若系统中有统一日志记录处理,应该将日志处理的拦截器放在第一个位置,并且必须放行,这样才能保证afterCompletion方法会执行
(若其它拦截器不放行,会导致postHandle方法不执行)

若系统中有登录校验拦截器、权限校验拦截器
应该把登录校验拦截器放在权限校验拦截器的前面,因为只有登录通过了,才会进行权限校验

单个拦截器执行流程:

不放行
preHandle------>返回

放行
preHandle------>handler中方法------>postHandle------>handler中方法返回ModelAndView------>afterCompletion

最新文章

  1. JAVA Thread线程异常监控
  2. NOIP2000进制转换
  3. .Net开源项目之开源论坛
  4. 109. Convert Sorted List to Binary Search Tree
  5. BufferedInputSream和BufferedOutputSream,,,
  6. SQL Server性能优化(2)获取基本信息
  7. jQuery选择器之基本过滤选择器Demo
  8. 直接调用系统Camera
  9. ios Object Encoding and Decoding with NSSecureCoding Protocol
  10. linux之无名管道
  11. js 抓取屏幕宽度设置字体大小 rem
  12. 论文笔记(6):Weakly-and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image Segmentation
  13. Vue 部署IIS 单页面刷新报404问题
  14. 逻辑卷管理(linux)
  15. CentOS7.2卸载完CDH5.12后重装CDH
  16. django配置发送邮箱
  17. python多进程apply与apply_async的区别
  18. synchronized锁住的是代码还是对象
  19. 【题解】Luogu P2787 语文1(chin1)- 理理思维
  20. Convert DataFrame string complex i to j python // “Cloning” row or column vectors

热门文章

  1. PoI 3.17 已过时代码对比
  2. 在springboot或者ssm框架或者类似的框架中VO、DTO、DO、PO的概念、区别和用处
  3. python实验脚本
  4. jenkins slave上执行脚本报错
  5. 不使用已下载的package pip 安装 & 出现time out error
  6. 【Mybatis】多个参数如何写xml和mapper
  7. [Taro] taro 缓存
  8. NOI2016优秀的拆分
  9. 总线宽度VS总线带宽
  10. js数组检测