过滤器的顺序由 web.xml 文件中 <filter-mapping>的顺序决定,从上到下

现有三个过滤器

  <filter><filter-name>AFilter</filter-name><filter-class>com.jerry.filter.AFilter</filter-class></filter><filter><filter-name>BFilter</filter-name><filter-class>com.jerry.filter.BFilter</filter-class></filter><filter><filter-name>CFilter</filter-name><filter-class>com.jerry.filter.CFilter</filter-class></filter><filter-mapping><filter-name>AFilter</filter-name><url-pattern>/servlet/*</url-pattern></filter-mapping><filter-mapping><filter-name>BFilter</filter-name><url-pattern>/servlet/*</url-pattern></filter-mapping><filter-mapping><filter-name>CFilter</filter-name><url-pattern>/servlet/*</url-pattern></filter-mapping>

逻辑如下

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {// 过滤器预处理逻辑代码。。。     System.out.println(this.getClass().getName() + " 预处理");// 调用下一个过滤器chain.doFilter(request, response);// 过滤器后处理逻辑代码。。。 System.out.println(this.getClass().getName() + " 后处理");}

输出如下

com.jerry.filter.AFilter 预处理
com.jerry.filter.BFilter 预处理
com.jerry.filter.CFilter 预处理
调用:service
调用:doGet
com.jerry.filter.CFilter 后处理
com.jerry.filter.BFilter 后处理
com.jerry.filter.AFilter 后处理

参考资料

web.xml 并不是必须的,现在使用SpringBoot也就再没配置过它了
Spring MVC 学习笔记 7《拦截器(Interceptor)》
Servlet、Filter、Listener 注册方式演变

Java 过滤器的顺序相关推荐

  1. java过滤器filter过滤相同url时的执行顺序

    java配置过滤器有两种方式: 第一种:web.xml中以filter-mapping标签方式配置,分为两种,一种是url-pattern,另一种是servlet-name. url-pattern方 ...

  2. java过滤器的执行顺序_Java Filter过滤器(拦截路径的配置+拦截方式的配置+生命周期+多个过滤器的先后执行顺序)...

    Java Filter过滤器+Listen监听器 啥是过滤器 顾名思义即过滤掉一些东西,比如我们经历的高考中考都是过滤器,他过滤掉一些在学习这一方面不是很好的人,而那些成绩好的人则升入高中,大学. 但 ...

  3. java过滤器实现以及多个过滤器之间的执行顺序

    1:使用注解方式 /*** 设置过滤范围* 多个过滤器之间,按照类名字母和数字来培训*/ @WebFilter("/*") public class Filter01 implem ...

  4. java 过滤器执行图_「filterchain」java 过滤器Filter中chain.doFilter()之前和之后代码的执行顺序 - seo实验室...

    filterchain 过滤器拦截到请求之后,首先是执行doFilter()方法中chain.doFilter()之前的代码,然后放弃权限给下一个过滤器或者serverlet等等,最后才执行chain ...

  5. JAVA过滤器以及拦截器的基本介绍以及使用

    JAVA过滤器以及拦截器的使用介绍 一 过滤器 1.1 过滤器简单介绍 JAVA过滤器能够对目标资源的请求和响应进行截取,对目标资源的请求和响应进行预处理,然后交给下一个过滤器或servlet处理. ...

  6. java过滤器和拦截器的使用及其区别

    1.过滤器: 依赖于servlet容器.在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次.使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数 ...

  7. Java过滤器Filter使用详解

    <div id="post_detail"> 转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6374212.html 在我的项目 ...

  8. Java过滤器Filter讲解(Java基础)

    你好我是辰兮,很高兴你能来阅读,本篇文章小结了Java过滤器的知识点,献给初学者,分享获取新知,希望我们一起进步. 文章目录 一.什么是过滤器 二.如何编写过滤器 三. 过滤器的配置 四.Filter ...

  9. java过滤器设置匹配的url与忽略的url的方法

    一.前言 配置java过滤器时,会用到FilterRegistrationBean,可以设置匹配的url与忽略的url.(之前不知道怎么设置忽略的url,现在找到了,赶紧总结下) 二.用法样例 //多 ...

最新文章

  1. 专利交底书模板_工大知识产权周 | 不说套话,看完这篇get专利技术交底书的要点!...
  2. 核心概念——节点/边/Combo——内置节点——Triangle
  3. linux3.4.2移植总结(s3c2440)
  4. python生成器与迭代器。
  5. js基础知识温习:构造函数与原型
  6. DenseNet:比ResNet更优的CNN模型
  7. Hadoop2源码分析-YARN 的服务库和事件库
  8. python编程自学好学吗 ?
  9. JavaFX Scene Builder支持JxBrowser
  10. 微信小程序提示 本地域名不在以下 request 合法域名列表中,
  11. 【数据分析实战】杭州2019年链家在售房源数据分析
  12. Python分析00-90后的微信昵称,发现如下规律!
  13. oracle 安装截图,ORACLE WIN7安装过程截图
  14. 了解什么是架构基本概念和架构本质
  15. 编程资料 -C# 多线程 1
  16. python语句--条件语句
  17. 4.17记录 LIS其二
  18. CA DC SUL区别
  19. Android-7.0系统安装异常之解析包错误
  20. 该如何学习三维点云配准的相关知识?

热门文章

  1. 交换路由技术综合实验
  2. 【附源码】Java计算机毕业设计体检中心健康管理系统(程序+LW+部署)
  3. [Go] 解决main.go:5:2: missing go.sum entry for module providing package github.com/astaxie/beego
  4. 正弦函数泰勒展开c语言,正弦函数的泰勒级数
  5. 开水果店前期投资多少钱,开一家小型水果店需要多少成本
  6. 简单邮件传输协议SMTP
  7. 云计算ACA练习题5
  8. linux8086汇编环境配置,LINUX下面进行8086汇编
  9. 利用Pajek软件批量处理excel数据,批量生成网络关系图
  10. 【最快的ubuntu系统安装微信教程】