- 过滤器(Filter):对request请求起到过滤的作用,作用在servlet之前,如果配置/*可以对所有的资源访问(servlet、js/css静态资源等)进行过滤处理。
- 监听器(Linstener):实现了javax.servlet.ServletContextLinstener接口的服务端组件,它随着web应用的启动而启动,只初始化一次,然后会一直运行监视,随web应用的停止而销毁
-
- 作用一:做一些初始化的工作,web应用中spring容器启动ContextLoaderListener
- 作用二:监听web中的特定事件,比如HttpSession,ServletRequest的创建和销毁;变量的创建、销毁和修改等。可以在某些动作前后增加处理,实现监控,比如统计在线人数,利用HttpSessionLisener等。
- 拦截器(Interceptor):是springMVC等表现层框架自己的,不会拦截jsp/html/css/image的访问,只会拦截访问的控制器方法(Handler)。
-
- 在handler业务逻辑执行前拦截一次
- 在handler逻辑执行完毕但未跳转页面前拦截一次
- 在跳转页面之后拦截一次