过滤器

首先,Servlet是Servlet,Filter是Filter,两者不能混为一谈,而且有先后之别,在web.xml中,一定是Filter在Servlet之前。

过滤器的作用,顾名思义,起到过滤作用,一般用于处理不同的xxxServlet公共处理的部分。比如,拦截某些客户端的ip,根据初始化参数的黑名单阻止继续访问,记录某个xxxservlet执行的时间等等。

《Tomcat与JavaWeb开发技术详解》

关于过滤器的使用步骤和生命周期,直接上图:

《Tomcat与JavaWeb开发技术详解》

你猜对了,过滤器也是Servlet帮你创建的,并且以它规定的顺序执行,什么时候执行什么方法。

所有的自己实现的过滤器都要实现javax.servlet.Filter接口。发布时要在web.xml中配置<filter>元素,且在所有的<servlet>之前。若要对所以的请求都过滤,<url-pattern>就写成"/*",Servlet容器都会先把请求交给过滤器处理。

——————

串联过滤器: 多个过滤器可以串联起来协同工作,Servlet容器将根据它们在web.xml中定义的先后顺序,依次调用它们的doFilter()方法。

《Tomcat与JavaWeb开发技术详解》
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容