SpringBoot(五):SpringBoot使用拦截器-申来来

发布于 2019-08-14 19:55:09

1.按照SpringMVC的方式编写一个拦截器:

image.png

2.配置一个类 implements WebMvcConfigurer 接口 为该类添加注解@Configuration (等价于一个spring的xml文件 比如applicationContext.xml) 标注一个配置类,让Springboot扫描到。覆盖其中的方法并添加已经编写好的拦截器

image.png

贴段代码:

@Configuration   // 等价于一个spring的xml文件 比如applicationContext.xml
public class WebConfig implements WebMvcConfigurer {
    /**
     * 添加拦截器
     * @param registry
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        // 拦截器要拦截的路径
        String [] pathPatterns = {
                "/**"
        };
        // 拦截器不拦截的路径
        String [] excluedPathPatterns = {
                "/boot/hello",
                "boot/jsp"
        };
        registry.addInterceptor(new LoginInterceptor()).addPathPatterns(pathPatterns).excludePathPatterns(excluedPathPatterns);
 
        //如果项目中有多个拦截器,把上面代码在复制一行,修改参数即可
 
    }
}

addPathPatterns(pathPatterns)excludePathPatterns(excluedPathPatterns)是可变参数,二u过要拦截的路径只有一条,可以直接写路径名字,不用写数组,如

registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/boot/**").excludePathPatterns(/boot/login);
0 条评论

发布
问题