tomcat中用到Pipeline-Value有二种方式,一种是管道/阀门,另一种是过滤器链/过滤器。

管道/阀门

过滤器链/过滤器

管道(Pipeline)

过滤器链(FilterChain)

阀门(Valve)

过滤器(Filter)

底层实现为具有头(first)、尾(basic)指针的单向链表

底层实现为数组

Valve的核心方法invoke(request,response)

Filter核心方法doFilter(request,response,chain)

pipeline.getFirst().invoke(request,response)

filterchain.doFilter(request,response)