FilterChain 和 Filter

  • Filter中doFilter(req,resp,chain)方法体中调用FilterChaindoFilter(req,resp)来触发下一个Filter
public interface FilterChain{//获取下一个Filter,调用Filter的doFilter方法public void doFilter(ServletRequest request, ServletResponse response);
}
public interface Filter {//处理任务结束后调用chain.doFilter(),来执行下一个Filterpublic void doFilter(ServletRequest request, ServletResponse response,FilterChain chain);
}

Filter 的作用

鉴权、日志、图片转换、数据压缩、解密、分词(tokenize)、触发事件.

聚合关系图

@startuml
interface FilterChain{{abstract} +void doFilter(ServletRequest request, ServletResponse response)
}interface Filter{{abstract} +void doFilter(ServletRequest request, ServletResponse response,FilterChain chain)
}class ConcreteFilterChain{- final List<Filter> filters;- Iterator<Filter> iterator;+void doFilter(ServletRequest request, ServletResponse response);
}
class ConcreteFilter{+void doFilter(ServletRequest request, ServletResponse response);
}FilterChain <|.. ConcreteFilterChainFilter <|.. ConcreteFilterFilter <--o ConcreteFilterChain
@enduml

引用

tags:

  • 设计模式
  • 责任链模式

[[责任链模式]]

FilterChain 和 Filter相关推荐

  1. java中servlet filter_lua学习笔记(二)仿java servlet中Filter功能

    2)代码 Filter.lua--[[ 过滤器接口 ]]-- local FilterChain = require("FilterChain") local Filter = { ...

  2. java web filter标签是什么,Java Web:5.Filter

    目录 什么是Filter? Filter是由Servlet容器进行调用,对 Servlet容器请求java服务端程序(调用资源:JSP,Servlet,静态HTML),java服务端程序响应Servl ...

  3. Servlet学习笔记(七)—— 自己定义过滤器的编写改进:自己定义实现FilterChain...

    笔记六中实现了三种过滤器:字符编码过滤.登录权限过滤.敏感词过滤,可是有个缺陷就是,限定了过滤顺序,而不能实现先进行request过滤.最后response过滤,而且中间几项过滤的顺序不能动态改变.所 ...

  4. JavaWeb之Filter过滤器

    原本计划这一篇来总结JSP,由于JSP的内容比较多,又想着晚上跑跑步减减肥,所以今天先介绍Filter以及它的使用举例,这样的话还有些时间可以锻炼锻炼.言归正传,过滤器从字面理解她的话有拦网.过滤的功 ...

  5. Java Servlet Filter

    做web开发的人对于Filter应该不会陌生,一直在很简单的使用,但是一直没有系统的总结一下,随着年纪的慢慢长大,喜欢总结一些事情,下面说说我对Filter的理解,官方给出的Filter的定义是在请求 ...

  6. Spring Security(09)——Filter

    目录 1.1     Filter顺序 1.2     添加Filter到FilterChain 1.3     DelegatingFilterProxy 1.4     FilterChainPr ...

  7. Filter基础知识

    一.简介 作用:对Servlet容器调用Servlet的过程进行拦截,从而在Servlet进行响应处理的前后实现一些特殊的功能. 过滤器 API:Filter,FilterChain,FilterCo ...

  8. java项目配置过滤器_在JavaWeb项目中如何正确的使用Filter过滤器

    在JavaWeb项目中如何正确的使用Filter过滤器 发布时间:2020-11-11 17:12:00 来源:亿速云 阅读:79 作者:Leah 这期内容当中小编将会给大家带来有关在JavaWeb项 ...

  9. FilterChain 过滤器链(Servlet)...修改中...

    目录 FilterChain 接口 Filter 链的拦截过程 Filter 链中 Filter 的执行顺序 示例 在 Web 应用中,可以部署多个 Filter,若这些 Filter 都拦截同一目标 ...

最新文章

  1. Awk之if ,else if,else用法
  2. android listview显示数据库内容
  3. 常用的20个正则表达式
  4. shiro 散列加盐(salt) 次数的效果
  5. PyQt标准框——QInputDialog(二)
  6. 变局之际,聊聊物联网的过去、现在和未来
  7. 【bzoj1597】 土地购买
  8. Nature发布第一张人类造血干细胞发育的全面路线图
  9. 进程的描述与控制 操作系统第二章知识点归纳总结
  10. pip清华源安装Tensorflow-gpu
  11. Java中的两种异常类型及其区别?
  12. 以下属于4nf的分解为_数据库原理·模拟试卷及答案(1)
  13. pytorch基础知识
  14. 关于目前深度学习技术的相关思考----个人理解笔记
  15. 深信服SCSA安全工程师题库(方便大家复习备考)
  16. 计算机电脑怎么开热点,图解电脑怎么开热点wifi——广传攻柴
  17. 网上流传房地产崩盘时间表 楼市重蹈日本覆辙 - 新闻中心 - 搜狐焦点网
  18. 解决git在push时报错fatal: unable to access ‘https://github.com/sup0C/a.git/‘: errno 10054
  19. Qt项目的新首席维护人员
  20. @Value之${}与#{}

热门文章

  1. IE捉迷藏bug详解
  2. SqlServer触发器计算年休假天数
  3. AppCode的使用
  4. Vue3 服务端渲染
  5. 葡萄城活字格 Web 应用生成平台荣获软博会十佳优秀产品
  6. 教你实现一个天气实时查询微信小程序
  7. 微软数据中心沉海怎么回事?省钱环保还能加快网速
  8. iDevice(09)纯粹编程机
  9. 1.Java中常见的重写
  10. linux清空buff,Linux中buff