Java拦截器 过滤器 监听器有何区别 都是啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java拦截器 过滤器 监听器有何区别 都是啥相关的知识,希望对你有一定的参考价值。

拦截器和过滤器基本是一个概念,拦截请求中的某些事件,进行过滤,监听器是将你的某个特有的事件监听起来,实时的! 参考技术A 晕~不是一回事啊~应用的地方不同~拦截器是在strusts2框架里面会使用到~拦截请求用的~监听器大多用于监听人机交互控件 参考技术B 拦截器、过滤器是一个东西,接口名一般为 **Filter,起一个中转的作用:
1.对传入的数据进行分析,如果符合过滤器的要求,则通过;否则不允许通过。
比如
interface FileFilter
public boolean doFilter(File file)
if(file.isFile())
return true;

reutrn false;


2. 对某些数据进行处理之后,交给下一步处理,如果是多层过滤器,可以考虑责任链模式。比如servlet中常用的的encodingFilter,用来转换post请求的编码。

监听器是对某个对象进行监听,对其产生的事件进行处理。比如awt部分的事件监听,需要有监听接口,被监听对象,事件对象。本回答被提问者和网友采纳

拦截器-监听器-过滤器的区别

Servlet:处理Request请求和Response响应

过滤器

过滤器(Filter):对Request请求起到过滤的作?,作?在Servlet之前,如果配置为/*可以对所
有的资源访问(servlet、 js/css静态资源等)进?过滤处理

监听器

监听器(Listener):实现了javax.servlet.ServletContextListener 接?的服务器端组件,它随Web应?的启动?启动,只初始化?次,然后会?直运?监视,随Web应?的停??销毁

作??: 做?些初始化?作, web应?中spring容器启动ContextLoaderListener
作??: 监听web中的特定事件,?如HttpSession,ServletRequest的创建和销毁;变量的创建、
销毁和修改等。可以在某些动作前后增加处理,实现监控,?如统计在线?数,利?HttpSessionLisener等。

拦截器

拦截器(Interceptor):是SpringMVC、 Struts等表现层框架??的,不会拦截jsp/html/css/image的访问等,只会拦截访问的控制器?法(Handler)。

从配置的?度也能够总结发现: serlvet、 filter、 listener是配置在web.xml中的,?interceptor是配置在表现层框架??的配置?件中的
在Handler业务逻辑执?之前拦截?次
在Handler逻辑执?完毕但未跳转??之前拦截?次
在跳转??之后拦截?次

技术图片







以上是关于Java拦截器 过滤器 监听器有何区别 都是啥的主要内容,如果未能解决你的问题,请参考以下文章

java web过滤器拦截器监听器的区别

过滤器,拦截器,监听器的区别

过滤器,拦截器,监听器的区别

过滤器,拦截器,监听器的区别

拦截器过滤器监听器的区别和使用

JavaWeb过滤器.监听器.拦截器-?原理&区别