springboot框架中filter过滤器的urlPatterns的匹配源码

如下图所示,我使用@WebFilter注解的方式定义了一个过滤器,同时定义了过滤器的过滤条件

urlPatterns为/*,可能很多人都知道filter的/*代表所有URL都匹配,但是源码在哪里呢

先打断点看一下调用链

然后跟着调用链慢慢点,看看哪里开始出现了过滤器,这条链路已经出现了,那么说明肯定是在这个之前进行过滤器注册的

往上翻就能看到创建过滤器链条的

然后我们就找到了filter匹配的具体位置,里面有match方法,判断url和urlpattern是否匹配

org.apache.catalina.core.ApplicationFilterFactory#createFilterChain

核心匹配方法,直接断点打到这里进行调试就好

org.apache.catalina.util.FilterUtil#matchFiltersURL(java.lang.String, java.lang.String)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值