filter的详细配置
我们已经了解了filter的基本用法,还有一些细节配置在特殊情况下起作用。
在servlet-2.3中,Filter会过滤一切请求,包括服务器内部使用forward转发请求和<%@ include file="/index.jsp"%>的情况。
到了servlet-2.4中Filter默认下只拦截外部提交的请求,forward和include这些内部转发都不会被过滤,但是有时候我们需要forward的时候也用到Filter,这样就需要如下配置。
<filter><filter-name>TestFilter</filtername><filter-class>anni.TestFilter</filter-class> </filter> <filter-mapping><filter-name>TestFilter</filtername><url-pattern>/*</url-pattern><dispatcher>REQUEST</dispatcher><dispatcher>FORWARD</dispatcher><dispatcher>INCLUDE</dispatcher><dispatcher>EXCEPTION</dispatcher> </filter-mapping>
这样TestFilter就会过滤所有状态下的请求。如果我们没有进行设置,默认使用的就是REQUEST。而EXCEPTION是在isErrorPage="true"的情况下出现的,这个用处不多,看一下即可。
这里FORWARD是解决request.getDispatcher("index.jsp").forward(request, response);无法触发Filter的关键,配置上这个以后再进行forward的时候就可以触发过滤器了。
Filter还有一个有趣的用法,在filter-mapping中我们可以直接指定servlet-mapping,让过滤器只处理一个定义在web.xml中的servlet。
<filter-mapping><filter-name>TestFilter</filter-name><servlet-name>TestServlet</servlet-name> </filter-mapping><servlet><servlet-name>TestServlet</servlet-name><servlet-class>anni.TestServlet</servlet-class> </servlet> <servlet-mapping><servlet-name>TestServlet</servlet-name><url-pattern>/TestServlet</url-pattern> </servlet-mapping>
直接指定servlet-name,TestFilter便会引用TestServlet配置的url-pattern,在某些filter与servlet绑定的情况下不失为一个好办法。
转载于:https://www.cnblogs.com/wenjieyatou/p/6112283.html
filter的详细配置相关推荐
- SSM整合Shiro进行登陆认证和授权详细配置
本篇博客将进行详细介绍Shiro+Spring+SpringMVC+Mybatis+数据库整合并进行登陆认证和授权详细配置. SSM的整合可以参考:https://blog.csdn.net/a745 ...
- 日志框架之Logback的使用与详细配置
日志框架之Logback的使用与详细配置 Logback概述 配置文件结构 日志级别 Logback的基本使用 与Maven项目集成 与Spring Boot集成 logback配置 Logger配置 ...
- 【安装篇】- 基于 VMWARE Oracle Linux7.9 安装 Oracle19c RAC 详细配置方案
作者 | yanwei 来源 | 墨天轮 https://www.modb.pro/db/95684 大家好,我是 JiekeXu,很高兴又和大家见面了,今天和大家一起来看看 Linux7.9 安装 ...
- OSSEC主要功能及原理+详细配置+日志文件分析
作者:谭丙章 E-mail:feifengwind@163.com OSSEC主要功能及原理 OSSEC属于基于主机和应用的入侵检测系统,通过监视企业重要服务器和各种应用以避免企业资源被攻击.滥用和误 ...
- Nginx负载均衡的详细配置及使用案例
Nginx负载均衡的详细配置及使用案例详解 感谢看过这一些列博文和评论的小伙伴, 我把自己所看到的学到的拿到这里来分享是想和大家一起学习进步, 想听听园友给出的意见, 也是对自己学习过程的一个总结. ...
- IntelliJ IDEA详细配置
2019独角兽企业重金招聘Python工程师标准>>> IntelliJ IDEA详细配置 关闭Intellij IDEA自动更新 在File->Settings->Ap ...
- apache mysql 连接数 winnt,APACHE PHP MYSQL PHPMYADMIN超详细配置教程
Apache+PHP+MySQL+phpMyAdmin超详细配置教程 安装之前需要下载 Apache2.0.59 PHP4.4.4Win32 MySQL4.12 phpMyAdmin2.9.1.1rc ...
- Window VNC远程控制LINUX:VNC详细配置介绍
Window VNC远程控制LINUX:VNC详细配置介绍 //---------------------------------------vnc linux下的详细配置 1.VNC的启动/停止/重 ...
- (原创)OpenStack服务如何使用Keystone(三)---详细配置Keystone中间件
(一)Keystone端的操作 (二)如何在OpenStack服务上部署Keystone中间件 (三)详细配置keystonemiddleware 前文我们介绍了如何部署Keystone中间件以及中间 ...
- 游戏型计算机的配置表,爽玩游戏型详细配置列表及推荐理由
爽玩游戏型详细配置列表及推荐理由: 配置清单 配件 品牌型号 数量 单价 CPU AMD羿龙II X4 955/盒装 1 ¥950 散热系统 极冻酷凌Igloo 5610+ 1 ¥99 内存 威刚2G ...
最新文章
- DbVisualizer Personal 7.0 数据库连接工具免安装版本获取,直接解压即可使用!
- 为什么读写文件要有缓冲区?为什么要有输入输出缓冲区?
- 十大经典排序算法之插入排序及其二分优化
- 基于Element-plus封装配置化表单组件(组件的v-model实现)
- 关于地图制图大赛的8点说明,附地图学习资源
- 7个等级 容灾等级_猫奴的10个等级 你的奴性有多高?
- opencv java教程_详解OpenCV For Java环境搭建与功能演示
- linux 内核 触摸屏,7. Linux - 触摸屏(电阻屏)驱动程序实现
- ps 中左边的工具栏消失了,解决方法
- js监听鼠标的滚轮滚动事件
- Wed Dec 20 2019 00:00:00 GMT+0800 (中国标准时间) 时间转换
- 各种排序算法耗时比较
- 嵌入式:ARM相关开发工具概述
- 5G网络中的缩略语与简写
- GTX1650Super和GTX1060哪个好?
- 华硕 ZenFone 国产新机盘点
- Android 获取手机中微信聊天记录
- 【FPGA入门教程】(二)FPGA学习路线及开发流程
- 细胞穿透肽八精氨酸、 H2N-RRRRRRRR-OH、 148796-86-5
- GPU大百科全书 最终章:33毫秒的咏叹调
热门文章
- hibernate中session 与JDBC中 connection分析
- 使用docker安装easy-mock
- golang cover协程异常
- C++11 实现线程池
- 26. iterator优先于const_iterator、reverse_iterator以及const_reverse_iterator
- html 在线图片压缩,JS HTML图片显示Canvas 压缩功能
- mysql8 docker镜像源_Docker 搭建 MySQL 8版本
- php讲一个正整数前补0,php 数字补零的两种的简单示例
- python房价预测_Python实战:使用线性回归预测房价
- vue 封装dialog_GitHub - 1014156094/vue-mobile-dialog: Vue移动端基础组件 - 对话框