首页 > 其他分享 >拦截器的配置以及执行顺序

拦截器的配置以及执行顺序

时间:2023-06-29 09:47:45浏览次数:36  
标签:拦截器 配置 顺序 import 执行 FirstInterceptor InterceptorRegistry

在Spring Boot中,拦截器的执行顺序可以通过InterceptorRegistry对象的addInterceptor()方法按照添加的顺序进行配置。

默认情况下,拦截器的执行顺序是按照它们添加到拦截器注册表中的顺序执行的。也就是说,先添加的拦截器会先执行,后添加的拦截器会后执行

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new FirstInterceptor())
                .addPathPatterns("/**")
                .order(1); // 设置拦截器的执行顺序为1
        
        registry.addInterceptor(new SecondInterceptor())
                .addPathPatterns("/**")
                .order(2); // 设置拦截器的执行顺序为2
    }
}

在上述例子中,首先注册的是FirstInterceptor拦截器,然后注册的是SecondInterceptor拦截器。因为设置了拦截器的执行顺序,所以FirstInterceptor会先执行,然后才轮到SecondInterceptor执行。

在Spring Boot中,如果前面的拦截器拦截了请求并返回false,后续的拦截器将不会执行。当一个拦截器的preHandle方法返回false时,拦截器链会立即终止,后续的拦截器将不会被执行

标签:拦截器,配置,顺序,import,执行,FirstInterceptor,InterceptorRegistry
From: https://www.cnblogs.com/ForeverLoveByMe/p/17513185.html

相关文章

  • Taurus .Net Core 微服务开源框架:Admin 插件【4-1】 - 配置管理-Kestrel【含https启用
    前言:继上篇:Taurus.NetCore微服务开源框架:Admin插件【3】-指标统计管理本篇继续介绍下一个内容:1、系统配置节点:App- Config 界面界面图如下:双击节点即可进入修改模式,如: 修改说明: 不勾选持久化,该配置当前生效,下次重次失效,修改后配置值旁边带有【temp】说明文......
  • 7、Kibana图形显示安装配置
    Kibana图形显示安装并配置Kibana可以通过包或者二进制的方式进行安装,可以安装在独立服务器,或者也可以和elasticsearch的主机安装在一起注意:Kibana的版本要和Elasticsearch相同的版本,否则可能会出错下载站点:https://mirrors.tuna.tsinghua.edu.cn/elasticstack/7.x下载:[......
  • Docker数据管理_配置数据卷
    Docker数据管理_配置数据卷命令dockerrun-v宿主机目录(文件):容器内目录(文件)webapps注意事项目录必须是绝对路径如果目录不存在则会自动创建可以挂载多个数据卷示例给Tomcat服务器挂载/opt/webapps路径。dockerrun-d--namemytomcat-p8080:8080......
  • 剑指 Offer 58 - I. 翻转单词顺序
    输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"Iamastudent.",则输出"student.aamI"。示例1:输入:"theskyisblue"输出: "blueisskythe"示例2:输入:" helloworld! "输出: "worl......
  • .NET Core 允许跨域的两种方式实现(IIS 配置、C# 代码实现)
    〇、前言当把开发好的WebApi接口,部署到Windows服务器IIS后,postman可以直接访问到接口并正确返回,这并不意味着任务完成,毕竟接口嘛是要有交互的,最常见的问题莫过于跨域了。若前端文件是在当前接口文件下的wwwroot文件夹下,那么接口的访问就没问题,因为是同协议(http、https)......
  • 如何配置mysql主从复制中的二进制日志传输?
    要配置MySQL主从复制中的二进制日志传输,需要进行以下步骤:确保主服务器的二进制日志功能已启用:在主服务器的配置文件(通常是my.cnf或my.ini)中,找到并确认以下配置项已启用:log_bin=ONbinlog_format=ROWlog_bin表示启用二进制日志功能,binlog_format设置......
  • Win10下,配置Mysql开启请求日志
    当我们在调试程序时,需要知道最终发给Mysql的是啥语句,这时候就要看Mysql收到的请求了。Mysql有四种日志:ErrorLog(错误日志),记录MySQL运行过程ERROR,WARNING,NOTE等信息,系统出错或者某条记录出问题可以查看ERROR日志。GeneralQueryLog(日常运行日志),记录MySQL运行中的每条请......
  • 配置 Visual Studio 使用指定的代理服务器访问网络
    1、首先找到VisualStudio主程序文件devenv.exe所在的文件夹如:VisualStudio2022的默认安装路径为:C:\ProgramFiles\MicrosoftVisualStudio\2022\Enterprise\Common7\IDE\devenv.exe2、在同文件夹内找到devenv.exe.config配置文件,打开进行编辑(需要管理员权限进行保存)......
  • plsql tnsnames.ora配置
    #tnsnames.oraNetworkConfigurationFile:F:\oracle\product.2.0\client_1\network\admin\tnsnames.ora#GeneratedbyOracleconfigurationtools.MES=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.6)(PORT=1521)))(CON......
  • SMT贴片加工有哪些工作顺序?
    SMT贴片加工有哪些工作顺序?使用表面贴装技术(SMT)的电子制造仅意味着将电子组件与自动机器组装在一起,该机器会将组件放置在电路板(印刷电路板,PCB)的表面上。与传统的通孔技术(THT)相比,SMT组件直接放置在PCB表面上,而不是焊接到引线上。在电子组装方面,SMT是业内最常用的工艺。电子组装不仅......