Spring-过滤器、监听器和拦截器

在开发Java Web项目时,经常会接触到过滤器、监听器和拦截器这些内容,很多朋友有时候会混淆这些概念也不是很清楚它们各自的作用和执行的流程,笔者曾经也是这样的,但是后来就通过扩展阅读得到了一篇很详细的执行链路图,如下:

请求链路图

过滤器(Filter)

过滤器Filter,是Servlet的的一个实用技术了。可通过过滤器,对请求进行拦截,比如读取session判断用户是否登录、判断访问的请求URL是否有访问权限(黑白名单)等。主要还是可对请求进行预处理。

监听器(Listener)

Listener是servlet规范中定义的一种特殊类。用于监听servletContext、HttpSession和servletRequest等域对象的创建和销毁事件。监听域对象的属性发生修改的事件。用于在事件发生前、发生后做一些必要的处理。一般是获取在线人数等业务需求。

拦截器(Interceptor)

在开发中处理利用以上的进行过滤web请求时,还可以使用Spring提供的拦截器(HandlerInterceptor)进行更加精细的控制



文章内容源自:oKong | 趔趄的猿

Mr.小智 wechat
欢迎您扫一扫上面的微信公众号,关注智镜智言!