1.StandardWrapperValve的invoke方法中,
A.根据Request创建对应的filer链对象,因为不同的请求可能会有不同的filter链
filter原理
B.调用ApplicationFilterChain.dofilter()方法
filter原理
C.通过ApplicationFilterChain里面的filters数组,这个成员变量包括了若干filter,filter.dofilter会把this传进去,也就是我们自己写的filter时,会调用chain.dofilter()
filter原理
D:看下chain.doFilter()方法
filter原理
E:发现了吧 这时个不断的往下调用的函数,直到filter没有了
F:internalDoFilter方法会继续往下执行,就是执行servlet的service方法
filter原理
可以看出 先根据Request和servlet创建filter链,那说明在一个请求来的时候,会new一个filter链,
然后执行各个filter的doFilter方法。

相关文章:

  • 2021-06-26
  • 2022-12-23
  • 2021-09-29
  • 2021-04-14
  • 2021-11-01
猜你喜欢
  • 2022-01-12
  • 2022-12-23
  • 2021-07-29
  • 2022-01-29
  • 2021-07-02
相关资源
相似解决方案