在springboot项目中使用拦截器

1、LoginInterceptor拦截器

public class LoginInterceptor implements HandlerInterceptor {

    private static final Logger log = LoggerFactory.getLogger(LoginInterceptor.class);

    /**
     * 进入controller层之前拦截请求
     * @param httpServletRequest
     * @param httpServletResponse
     * @param o
     * @return
     * @throws Exception
     */
    @Override
    public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {

        log.info("---------------------开始进入请求地址拦截----------------------------");
        return true;

    }

    @Override
    public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
        log.info("--------------处理请求完成后视图渲染之前的处理操作---------------");
    }

    @Override
    public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
        log.info("---------------视图渲染之后的操作-------------------------0");
    }

}

2、接下来我们需要将LoginInterceptor拦截器添加到SpringBoot的配置中,让SpringBoot项目有这么一个拦截器存在,我们新创建一个WebAppConfig,将拦截器的配置以及拦截路径配置好

1

2

3

4

5

6

7

@Configuration

public class WebAppConfig extends WebMvcConfigurerAdapter{

    @Override

    public void addInterceptors(InterceptorRegistry registry){

        registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/**");//  /**为拦截的controller地址

    }


版权声明:本文为baidu_23263735原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。