1.思考
前面,我们学到了一个过滤器是如何创建的,以及过滤器的生命周期。我们的服务器会根据用户的请求,将访问的资源先按照要求进行过滤,过滤后反馈给用户相应的响应。那么,当我们的服务器中有多个过滤器的时候,它又会是怎么样的一个执行过程呢?
过滤器,是用来过滤用户访问的资源,即我们的网页。如果两个过滤器过滤的是不同的网页,那么他们彼此没有交集,互不干扰,各干各的事情。但是如果我们的过滤器过滤的是相同的网页的时候,那么又是一个什么样的执行顺序呢?可以举一个我们生活中的例子:
这是一个过滤器,每一层由不同的物质组成。从上往下假设为A,B,C,D,可以把A,B,C,D视为四个过滤器,他们就过滤相同的物质。过滤的顺序当然是从上往下:A->B->C->D,这个顺序是按照过滤器的排列顺序决定的。所以在我们的程序中,过滤相同资源的过滤器的执行顺序,也是按照其在web.xml文件中注册的顺序执行的。