zoukankan      html  css  js  c++  java
  • 自定义拦截器

    1.自定义一个类、实现HandleHandlerInterceptor ,实现接口中的方法

     1 public class Myinterceptor implements HandlerInterceptor {
     2     @Override
     3     //preHandle在目标handler方法执行之前
     4     //返回值 boolean类型  true表示放行该请求、false表示拦截
     5     //作用:做权限验证、日志
     6     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
     7         return true;
     8     }
     9     @Override
    10     // postHandler在目标handler方法执行之后执行,在 视图渲染(render)之前执行
    11     //视图渲染:就是把值填充到页面中的这个过程
    12     //作用:可以在数据到达页面之前对域中的数据进行修改
    13     public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
    14     }
    15     @Override
    16     //afterCompletion:在目标handler执行之后,而且在视图渲染执行之后执行。
    17     //作用:做资源释放
    18     public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
    19     }
    20 }

    2.在springmvc中配置该拦截器

    <mvc:interceptors>
    //每一个mvc:interceptor:对应着一个拦截器 mvc:mapping 代表要拦截的请求 /代表当前项目下 **代表任意请求 <mvc:interceptor> <mvc:mapping path="/**"/>
         <mvc:exclude-mapping path=""/> //代表不拦截的请求 <bean class="com.ujy.Interceptor.Myinterceptor"/> </mvc:interceptor> </mvc:interceptors>

    当里面即配置拦截的  又配置不拦截的 以不拦截的优先级大于拦截的  两者都在以不拦截为主

    拦截器 不拦截jsp!!

    多拦截器执行顺序

  • 相关阅读:
    python开发--信息处理系统
    oracle--表空间操作
    oracle--表空间基本操作
    CPU、内存、磁盘的瓶颈(转载文)
    在pycharm中进行ORM操作
    contenttypes组件 (处理大量外键)
    Django Rest Framework 请求流程
    Python标准库--UUID
    Django REST framework基础:版本、认证、权限、限制
    Django Rest Framework 视图和路由
  • 原文地址:https://www.cnblogs.com/ych961107/p/11892299.html
Copyright © 2011-2022 走看看