过滤器

Posted javawen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了过滤器相关的知识,希望对你有一定的参考价值。

1:作用域
  ServletContext(上下文)
  HttpSession(会话)
  ServletRequest(请求)
   
   
  过滤器
  一个中间组件,用于拦截源数据和目的数据之间的消息
  过滤二者之间传递的数据
   
  驻留在Web服务器上的Web组件
  过滤从客户端传递到服务器端的请求和响应
  (在Web应用程序中部署过滤器,对客户端和目标资源来说都是透明的,他们并不需要知道过滤器的存在。
  )
  过滤器的一些常见应用:
  1:认证过滤:对用户请求进行统一的认证。
  2:登录和审核过滤:对用户的访问请求进行记录和审核。
  3:图像转换过滤:转换图像格式。
  4:数据压缩过滤 :对用户发生的数据进行压缩,从而减少传输量。
  5:加密过滤:对请求和响应进行加密解密处理。 https
   
  所有的过滤器必须实现javax.servlet.Filter接口
   
   
  在部署文件web.xml中添加过滤器的注册与映射
  <!—指定过滤器名和过滤器类-->
  <filter>
  <filter-name>HelloWorldFilter</filter-name>
  <filter-class>com.wode.HelloWorldFilter</filter-class>
  </filter>
  <!-- 将过滤器与URL模式关联-->
  <filter-mapping>
  <filter-name>HelloWorldFilter</filter-name>
  <url-pattern>/filter/*</url-pattern>
  </filter-mapping>
   
   
   
  doFilter(ServletRequest, ServletResponse)
  我们从一个过滤器对象的doFilter()方法中调用此方法,以继续过滤器链的传递过程。它会将控制转到链中的下一个组件。
   
   
  过滤器链
  <filter-mapping>
  <filter-name>FilterA</filter-name>
  <servlet-name>AServlet</servlet-name>
  </filter-mapping>
  <filter-mapping>
  <filter-name>FilterB</filter-name>
  <url-pattern>*.test</url-pattern>
  </filter-mapping>
  <servlet-mapping>
  <servlet-name>FilterC</servlet-name>
  <url-pattern>*.test</url-pattern>
  </servlet-mapping>

以上是关于过滤器的主要内容,如果未能解决你的问题,请参考以下文章

php 类别过滤器分类多过滤器多过滤器多过滤器

过滤器的作用 过滤器介绍

Filter(过滤器)

在Hbase使用过滤器(行键过滤器列族与列过滤器值过滤器)

过滤器是干啥用的 为啥要安装过滤器

前置过滤器有用吗?前置过滤器的作用是啥?