美文网首页
过滤器、拦截器及监听器的用途和区别

过滤器、拦截器及监听器的用途和区别

作者: 后山野鹤 | 来源:发表于2019-06-28 15:01 被阅读0次

一、过滤器

1、依赖于servlet容器
2、实现原理基于函数回调,可以对几乎所有的请求进行过滤
3、可以对request和response进行修改操作,例:修改返回状态码、修改request的 参数、过滤低俗、危险字符的请求

二、拦截器

1、依赖于Web框架
2、实现原理基于Java的反射机制,运用AOP理念
3、缺点针对方法的预处理,对于静态资源的访问无法进行拦截

三、监听器

1、程序启动时进行初始化,只初始化一次,实现ServletContextListener接口
2、随着程序的停止而销毁
3、作用:在初始化时,做一些全局的配置,固定对象的创建,Bean对象的创建,全局变量的初始化

执行顺序

Filter pre (进入过滤器)-> Servlet Service -> dispatcher -> preHandle(拦截器)

-> controller -> postHandle(拦截器) -> afterCompletion(拦截器) -> Filter after(拦截器完成)

相关文章

网友评论

      本文标题:过滤器、拦截器及监听器的用途和区别

      本文链接:https://www.haomeiwen.com/subject/dnoscctx.html