zoukankan      html  css  js  c++  java
  • 过滤器Filter

    •Servlet过滤器本身并不生成请求和响应对象,它只提供过滤作用。
    •Servlet过滤器能够在Servlet被调用之前检查Request对象,修改Request Header和Request内容;
    •在Servlet被调用之后检查Response对象

    •所有的Servlet过滤器类都必须实现javax.servlet.Filter接口。这个接口含有3个过滤器类必须实现的方法:
    –init()
    –doFilter()
    –destroy(),修改Response Header和Response内容。Servlet过滤器负责过滤的Web组件可以是Servlet、JSP或HTML文件。

    init(FilterConfig):

    这是Servlet过滤器的初始化方法,Servlet容器创建Servlet过滤器实例后将调用这个方法。在这个方法中可以读取web.xml 文件中Servlet过滤器的初始化参数
    •doFilter(ServletRequest, ServletResponse,FilterChain):
    这个方法完成实际的过滤操作。当客户请求访问与过滤器关联的URL时,Servlet容器将先调用过滤器的doFilter方法。FilterChain参数用于访问后续过滤器
    •destroy():

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

    还可以配置串联的servlet过滤器

    <filter>
    <filter-name>Filter1</filter-name>
    <filter-class>Filter1</filter-class>
    </filter>
    <filter>
    <filter-name>Filter2</filter-name>
    <filter-class>Filter2</filter-class>
    </filter>

    <filter-mapping>
    <filter-name>Filter1</filter-name>
    <url-pattern>/note</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>Filter2</filter-name>
    <url-pattern>/note</url-pattern>
    </filter-mapping>

  • 相关阅读:
    [问题2014A05] 复旦高等代数 I(14级)每周一题(第七教学周)
    oracle的相关信息
    进程和线程的区别
    阿里云人脸检测定位
    php与oracle11g经典分页
    Linux 远程复制
    redis的相关信息
    教你编译PHP7 (nginx+mysql+php7)
    nginx的相关信息
    php about session store db or cache
  • 原文地址:https://www.cnblogs.com/lulu638/p/4089044.html
Copyright © 2011-2022 走看看