Filter可认为是Servlet的“加强版”,他主要用于对用户请求进行预处理,也可以对HttpServletResponse进行后处理,是个典型的 处理链。 使用Filter完整的流程是:Filter对用户请求进行预处理,接着将请求交给Servlet进行处理并生成响应,最后Filter再对服务器进行后处理。

Filter的好处: 1. 在servlet被调用之前截获; 2. 在servlet被调用之前检查servlet request; 3. 根据需要修改request头和request数据; 4. 根据需要修改response头和response数据; 5. 在servlet被调用之后截获.

Filter实现拦截的原理 Filter接口中有一个doFilter方法,当开发人员编写好Filter类实现doFilter方法,并配置对哪个web资源进行拦截后, WEB服务器每次在调用web资源的service方法之前(服务器内部对资源的访问机制决定的),都会先调用一下filter的doFilter方法。

最新文章

  1. js常用工具类.
  2. mysql can't create threads in threadpool
  3. Hibernate —— Entity.hbm.xml
  4. 第一章,Linux常用命令
  5. Linq 操作基础
  6. 关于我们的Jquery操作下拉列表和复选框,自定义下拉
  7. 基于SQL_ID查看对象大小
  8. linux c 之signal 和sigaction区别
  9. STM32串口乱码
  10. 关于Java泛型的新解
  11. Mysql实现企业级日志管理、备份与恢复实战
  12. 为 Debian 8 或 Debian 9(64 位)安装 .NET Core
  13. ●HDU 3507 Print Article
  14. python 时间戳和时间格式互相转换
  15. destoon使用
  16. HTML基础(1)——样式表
  17. python学习笔记(四)- 常用的字符串的方法
  18. 自定义控件详解(四):Paint 画笔路径效果
  19. OpenStack中MySQL高可用配置
  20. android--------动画之进度条

热门文章

  1. Python之freshman08 Socket
  2. 【语义分割】large kernel matters中GCN模块的pytorch实现
  3. Python web前端 03 CSS属性
  4. P3066 [USACO12DEC]逃跑的BarnRunning Away From (树上二分)
  5. js中点和向量的基本方法
  6. HTTP时间指标
  7. scrapy模块之分页处理,post请求,cookies处理,请求传参
  8. java中的线程(1):如何正确停止线程Why Are Thread.stop, Thread.suspend, Thread.resume and Runtime.runFinalizersOnExit Deprecated?
  9. CI 框架中的日志处理 以及 404异常处理
  10. [转]创建节约内存的JavaBean