此处的循环不是那么容易理解,建议参考鄙人的另一篇博客
http://blog.csdn.net/dlf123321/article/details/40078583
等所有的Filter都执行完了,就是下面的代码
if ((request instanceof HttpServletRequest) &&
(response instanceof HttpServletResponse)) {
servlet.service((HttpServletRequest) request,
(HttpServletResponse) response);
} else {
servlet.service(request, response);
}
什么时候Filter才算执行完了呢?
private Iteratoriterator = null; .... if (this.iterator == null) this.iterator = filters.iterator(); // Call the next filter if there is one if (this.iterator.hasNext()) { //执行filter } ... //调用servlet的service的代码块 ...