The Introduction Of Filter

Filter

filter(过滤器)是一个可以转换一个请求或者回应的头部或者内容,亦或者将两者都转换了的对象。它和组件的不同是它不自己创建一个response,而是提供一种可以和任意web资源相连接的功能

filter的主要任务

1.查询请求并采取相应的行动

2.阻止请求-响应进一步传递

3.修改请求头和数据

4.修改响应头和数据

5.与外部资源进行交互

编程的过滤器

过滤器API由javax.servlet包里的过滤器、过滤器链和过滤器配置接口定义,你可以定义一个过滤器通过实现Filter的接口。

已被注解的过滤器必须指定至少一个URL模式。

使用@WebFilter注释的类必须实现javax.servlet过滤器接口。

Filter And Servlet

它使用户可以改变一个request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在response离开servlet时处理response.换种说法,filter其实是一个“servlet chaining“(servlet 链).
包括
1. 在servlet被调用之前截获;
2. 在servlet被调用之前检查servlet request;
3. 根据需要修改request头和request数据;
4. 根据需要修改response头和response数据;
5. 在servlet被调用之后截获.
你能够配置一个filter 到一个或多个servlet;单个servlet或servlet组能够被多个filter 使用。几个实用的filter 包括:用户辨认filter,日志filter,审核filter,加密filter,符号filter,能改变xml内容的XSLT filter等。
posted @ 2019-03-24 20:23  匪我  阅读(117)  评论(0编辑  收藏  举报