JAVA WEB 过滤器

过滤器介绍

  过滤器是一个服务器端的组件,它可以截取用户端的请求与响应信息,并对这些信息过滤

  过滤器的生命周期:实例化(web.xml),初始化(init()),过滤(doFilter()),销毁(destroy())

第一个过滤器

  init():这是过滤器的初始化方法,web容器创建过滤器实例后将调用这个方法。这个方法中可以读取web.xml文件中过滤器的参数

  doFilter():这个方法完成实际的过滤操作,这个地方是过滤器的核心方法。当用户请求访问与过滤器关联的URL时,Web容器将先调用过滤器的doFileter方法。
  FilterChain参数可以调用chain.doFilter方法,将请求传给下一个过滤器(或目标资源),或利用转发,重定向将请求资源转发到其他资源。

  destroy() Web容器在销毁过滤器实例前调用该方法,在这个方法中可以释放过过滤器占用的资源。


Web.xml配置
  <fileter>
  <filter-name>Filter的名字</filter-name>
  <filter-class>Filter类的名字</filter-class>

  <init-param>
  <description>描述信息可以放在这</description>
  <param-name>参数的名称</param-name>
  <param-value>参数的值</param-value>
  </init-param>
  </filter>

  <filter-mapping>
  <filter-name>Filter的名字</filter-name>
  <url-pattern>URL</url-pattern>
  <dispatcher></dispatcher>
  </filter-mapping>

过滤器链
  多个过滤器指向一个url,顺序按照web.xml配置的顺序来。

过滤器的分类
  Servlet2.5:request,forward,include,error
  Servlet3.0:async

原文地址:https://www.cnblogs.com/haizhongdenta/p/8698716.html