zoukankan      html  css  js  c++  java
  • Spring Boot 自定义Intercepter

    在 SpringBoot2.X 中 ,WebMvcConfigurerAdapter 被deprecated , 更好的做法是 implements WebMvcConfigurer

    一、自定义拦截器

    @Component
    public class MyInterceptor implements HandlerInterceptor {
    
        /**
         * 进入controller层之前拦截请求
         * @param request
         * @param response
         * @param handler
         * @return
         */
        @Override
        public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
            System.out.println("getContextPath:" + request.getContextPath());
            System.out.println("getServletPath:" + request.getServletPath());
            System.out.println("getRequestURI:" + request.getRequestURI());
            System.out.println("getRequestURL:" + request.getRequestURL());
            System.out.println("getRealPath:" + request.getSession().getServletContext().getRealPath("image"));
            return true;
        }
    
    
        /**
         * 处理请求完成后视图渲染之前的处理操作
         * @param request
         * @param response
         * @param handler
         * @param modelAndView
         */
        @Override
        public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) {
    
        }
    
        /**
         * 视图渲染之后的操作
         * @param request
         * @param response
         * @param handler
         * @param ex
         */
        @Override
        public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
    
        }
    }
    

    二、拦截器配置

    @Configuration
    public class WebConfig implements WebMvcConfigurer {
    
        @Bean
        public MyInterceptor myInterceptor(){
            return new MyInterceptor();
        }
    
        @Override
        public void addInterceptors(InterceptorRegistry registry) {
            //添加拦截路径和排除拦截路径
            registry.addInterceptor(myInterceptor()).addPathPatterns("/**").excludePathPatterns("/test");
        }
    }
    


    作者:关小涛
    学习和分享是博客最大的乐趣,欢迎大家取之所需。
    努力是自己努力的原因,每周天写博客总结工作中的新技能和出现的问题
  • 相关阅读:
    XML 使用例子(转)
    [转载]网游数据解释
    [转载]游戏引擎列表
    (转)XML 使用
    LuaPlus新手使用方法(转)
    [转载]很有参考意义的显卡性能排行榜
    (转)LuaPlus子表遍历
    (转)LuaPlus集成Lua脚本
    HTML5尝鲜(1):使用aduio标签打造音乐播放器
    oracle的rollup
  • 原文地址:https://www.cnblogs.com/XtsLife/p/11384006.html
Copyright © 2011-2022 走看看