OncePerRequestFilter-阿里云开发者社区

开发者社区> 云原生> 正文
登录阅读全文

OncePerRequestFilter

简介: OncePerRequestFilter 顾名思义—》一次请求仅仅经过一个的filter,而不需要重复执行。 Filter不都是仅仅经过一次的吗? 不是的!不然就不会有这个类了。

OncePerRequestFilter 顾名思义—》一次请求仅仅经过一个的filter,而不需要重复执行。

Filter不都是仅仅经过一次的吗?
不是的!不然就不会有这个类了。。
此方式是为了兼容不同的web container,特意而为之(jsr168),也就是说并不是所有的container都像我们期望的只过滤一次,servlet版本不同,表现也不同。
如,servlet2.3与servlet2.4也有一定差异
写道
在servlet-2.3中,Filter会过滤一切请求,包括服务器内部使用forward转发请求和<%@ include file=”/index.jsp”%>的情况。
到了servlet-2.4中Filter默认下只拦截外部提交的请求,forward和include这些内部转发都不会被过滤,但是有时候我们需要 forward的时候也用到Filter。

因此,为了兼容各种不同的运行环境和版本,默认filter继承OncePerRequestFilter是一个比较稳妥的选择。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
云原生
使用钉钉扫一扫加入圈子
+ 订阅

云原生时代,是开发者最好的时代

其他文章