SpringBoot(五):SpringBoot使用拦截器
1.按照SpringMVC的方式编写一个拦截器:

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

贴段代码:
@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);
SpringBoot(五):SpringBoot使用拦截器的更多相关文章
- springboot(五)过滤器和拦截器
		前言 过滤器和拦截器二者都是AOP编程思想的提现,都能实现诸如权限检查.日志记录等.二者有一定的相似之处,不同的地方在于: Filter是servlet规范,只能用在Web程序中,而拦截器是Sprin ... 
- springboot(五).如何在springboot项目中使用拦截器
		在每个项目中,拦截器都是我们经常会去使用的东西,基本上任一一个项目都缺不了拦截器的使用. 如日志记录.登录验证,session验证等,都需要拦截器来拦截URL请求,那springboot中的拦截器是如 ... 
- SpringBoot从零单排 ------ 拦截器的使用
		在项目开发中我们常常需要对请求进行验证,如登录校验.权限验证.防止重复提交等等,通过拦截器来过滤请求.自定义一个拦截器需要实现HandlerInterceptor接口.代码如下: import org ... 
- 如何在SpringBoot项目中使用拦截器
		相比springmvc,springboot中拦截器不需要在xml中配置,只需定义拦截器类 implements HandlerInterceptor 和拦截器拦截路径的配置类extends WebM ... 
- springboot中配置了拦截器后,拦截器无效的解决方案之一
		springboot的启动类xxxApplication不能扫描到拦截器配置类,可加上@ComponentScan(basePackages={"com.maya.common"} ... 
- SpringBoot静态资源访问+拦截器+Thymeleaf模板引擎实现简单登陆
		在此记录一下这十几天的学习情况,卡在模板引擎这里已经是四天了. 对Springboot的配置有一个比较深刻的认识,在此和大家分享一下初学者入门Spring Boot的注意事项,如果是初学SpringB ... 
- springBoot 2.X-自定义拦截器
		package com.cx.springboot.myInter; import javax.servlet.http.HttpServletRequest; import javax.servle ... 
- springboot 2.0+ 自定义拦截器
		之前项目的springboot自定义拦截器使用的是继承WebMvcConfigurerAdapter重写常用方法的方式来实现的. 以下WebMvcConfigurerAdapter 比较常用的重写接口 ... 
- 玩转SpringBoot之整合Mybatis拦截器对数据库水平分表
		利用Mybatis拦截器对数据库水平分表 需求描述 当数据量比较多时,放在一个表中的时候会影响查询效率:或者数据的时效性只是当月有效的时候:这时我们就会涉及到数据库的分表操作了.当然,你也可以使用比较 ... 
随机推荐
- BZOJ2555 SubString【SAM + Link Cut Tree】
			BZOJ2555. SubString 要求在线询问一个串在原串中出现的次数,并且可以在原串末尾添加字符串 如果没有修改的话,考虑建出\(parent\)树之后统计每个\(endpos\)节点的\(r ... 
- Codeforces Round #666 (Div. 2)  C. Multiples of Length  (构造,贪心)
			题意:有一个长度为\(n\)的序列,可以操作\(3\)次,每次选取一段区间,然后区间的元素加减区间长度的倍数,\(3\)次操作后使得序列所有元素为\(0\),问具体操作情况. 题解:假如我们能选择一整 ... 
- Educational Codeforces Round 89 (Rated for Div. 2)   B. Shuffle  (数学,区间)
			题意:有长为\(n\)的排列,其中\(x\)位置上的数为\(1\),其余位置全为\(0\),询问\(m\)次,每次询问一个区间,在这个区间内可以交换任意两个位置上的数,问\(1\)最后出现在不同位置的 ... 
- 在.NET中体验GraphQL
			前言 以前需要提供Web服务接口的时候,除了标准的WEBAPI形式,还考虑了OData.GraphQL等形式,虽然实现思路上有很大的区别,但对使用方来说,都是将查询的主动权让渡给了前端,让调用方能够更 ... 
- anaconda + pyqt5 + pycharm 安装,测试
			1. 安装sip pip install sip 2.安装pyqt5 pip install PyQt5 pip install PyQt5-tools -i http://pypi.douban.c ... 
- codeforces 1029E Tree with Small Distances【思维+贪心】 【非原创】
			题目:戳这里 学习博客:戳这里 题意:给一个树加最少的边,使得1到所有点的距离小于等于2. 解题思路:分析样例3可以看出,如果一个点到1的距离大于2,那么建立1到该点的父亲节点的边将比直接与该点建边更 ... 
- flagcounter 被禁用...
			源地址 https://s11.flagcounter.com/count2/arWz/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_14 ... 
- bzoj4355 Play with sequence(吉司机线段树)题解
			题意: 已知\(n\)个数字,进行以下操作: \(1.\)区间\([L,R]\) 赋值为\(x\) \(2.\)区间\([L,R]\) 赋值为\(max(a[i] + x, 0)\) \(3.\)区间 ... 
- Ubuntu16安装Caffe+Python3缺少libboost
			如果在/usr/lib/x86_64-linux-gnu中找到libboost_python-py3.5.so, 则 sudo ln -s libboost_python-py3.5.so libbo ... 
- JavaScript 注释规范
			JavaScript 注释规范 总原则 As short as possible(如无必要,勿增注释).尽量提高代码本身的清晰性.可读性. As long as necessary(如有必要,尽量详尽 ... 
