拦截器的使用
-
- 1.理解示意图
- 2.内容原理
- 3.代码实现
1.理解示意图
蓝色为拦截器,很直观…蓝=拦,手动滑稽
2.内容原理
使用 SpringMVC 的拦截器:
原理:
- 在 Servlet 和控制器单元方法之间进行拦截
使用:
- 创建拦截器类,创建一个实现了 HandlerInterceptor 接口的 java 类
- 并复写方法preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2)
作用:
- 拦截单元方法,返回值为 false 则拦截,返回值为 true 则放行
参数:
- HttpServletRequest arg0,拦截的请求的 request 对象
- HttpServletResponse arg1, 拦截的请求的 response 对象
- Object arg2 封存了单元方法对象的 HandleMethod 对象postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
- HttpServletRequest arg0, 拦截的请求的 request 对象
- HttpServletResponse arg1, 拦截的请求的 response 对象
- Object arg2, 封存了单元方法对象的 HandleMethod 对象
- ModelAndView arg3 封存了单元方法的返回值资源路径和请 求转到的 Map 数据afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
- HttpServletRequest arg0, 拦截的请求的 request 对象
- HttpServletResponse arg1, 拦截的请求的 response 对象
- Object arg2, 封存了单元方法对象的 HandleMethod 对象
- Exception arg3 存储了责任链的异常信息
注意:
- 拦截器的方法执行顺序
- preHandle—>单元方法—&g
版权声明:本文不是「本站」原创文章,版权归原作者所有 | 原文地址: