zoukankan      html  css  js  c++  java
  • 对Filter的理解

    Filter 技术是servlet 2.3新增加的功能。servlet2.3是sun公司于2000年10月发布的,它的开发者包括许多个人和公司团体,充分体现了sun公司所倡导的代码开放性原则。在众多参与者的共同努力下,servlet2.3比以往功能都强大了许多,而且性能也有了大幅提高。

    特点功能

    它新增加的功能包括:
    1. 应用程序生命周期事件控制;
    2. 新的国际化;
    3. 澄清了类的装载规则
    4. 新的错误及安全属性;
    5. 不赞成使用HttpUtils 类;
    6. 各种有用的方法;
    7. 阐明并扩展了几个servlet DTD;
    8. filter功能.

    功能介绍

    其中最重要的就是filter功能.它使用户可以改变一个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等。
    一个filter必须实现javax.servlet.Filter。
    三个方法
    1. void setFilterConfig(FilterConfig config) //设置filter 的配置对象;
    2. FilterConfig getFilterConfig() //返回filter的配置对象;
    3. void doFilter(ServletRequest req,ServletResponse res,FilterChain chain) //执行filter 的工作.
    注:现setFilterConfig和getFilterConfig方法已取消,代之为init(FilterConfig config)和destory()方法。
  • 相关阅读:
    swagger接口文档生成扩展
    laykefu 在线客服php代码
    常用使用工具
    指定ip访问网址
    浏览器跨域cookie问题
    查看php-fpm 或者nginx运行的用户
    nginx、Apache重写规则
    使用SnowFlake算法生成唯一ID
    关于分布式系统的数据一致性问题
    coreseek使用
  • 原文地址:https://www.cnblogs.com/qiyi001/p/8655416.html
Copyright © 2011-2022 走看看