Tomcat源码分析 filter 责任链模式
来源:互联网 发布:录视频的软件 编辑:程序博客网 时间:2024/05/17 01:09
之前在 TOMCAT源码分析 http消息解析 中分析到在调用servlet之前会调用
voidorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ServletRequestrequest, ServletResponse response)
这个函数分成两部分,前半部分采用责任链模式调用filter,后半部分调用servlet。在类ApplicationFilterChain中保存有filter的列表privateApplicationFilterConfig[] filters ,filters中的每个元素对应在web.xml注册的filter。用户在编写filter的时候除了需要实现javax.servlet.Filter接口之外。如果不需要过滤还要在doFilter中加入chain.doFilter(request, response); 这里的chain就是在internalDoFilter中传入的this。然后会继续在internalDoFilter中执行下一个filter,直到产生过滤效果或者if(pos < n)判断为false调用servlet。
关于责任链模式和tomcat中filter的注册及调用的详细过程,可以参考《JAVA与模式》之责任链模式
- Tomcat源码分析 filter 责任链模式
- Tomcat源码分析(四)--容器处理链接之责任链模式
- Tomcat源码分析(四)--容器处理链接之责任链模式
- Tomcat源码分析(四)--容器处理链接之责任链模式
- Tomcat Filter 源码分析
- tomcat责任链模式
- 责任链模式源码
- Java Filter 与 责任链设计模式
- java 设计模式 责任链 filter
- Tomcat中的设计模式--责任链模式
- tomcat源码分析之filter和servlet
- java模式---责任链模式之Filter链条
- 从Tomcat中学习责任链模式
- [tomcat学习] 责任链模式实例
- 分析模式 - 责任模式
- Filter--责任链
- 模拟Java Web的Filter责任链模式
- 设计模式---责任链(模拟Servlet的filter)
- c/c++内存分配
- 双向链表的排序
- jdk,tomcat,sqlserver环境变量配置
- Java中对IO的理解
- iOS:hidesBottomBarWhenPushed的正确用法
- Tomcat源码分析 filter 责任链模式
- 8、网友问答之串口数据接收与数据强制转换---------labview宝典
- Mysql 数据批处理(excuteBatch)
- 一些有用的linux命令
- Linux系统下如何查看及修改文件读写权限
- Cocos2dx隐藏iOS7状态栏】通过添加Plist Key隐藏iOS7状态栏
- Pro Android学习笔记(四四):Dialog(1):触发Dialog
- vc 获取计算机名 和 ip 地址
- UML学习资料整理