网站首页 > java教程 正文
今天有童鞋问我java中的filter过滤器、interceptor拦截器的区别,额。。。好像这个鬼问题被回答了无数次,但我觉得能不能用更好的方式让别人理解,我们已经知道了这两个玩意儿就是两个过滤器类,在javaweb中, 一切事物都离不开容器!
一、站在容器的角度来看,它们是这样的:
这里的区别在于:filter属于servlet管理,interceptor属于springmvc容器管理,基于这个特性我们可以理解一下这些区别:
- interceptor不依赖servlet,filter依赖于servlet。
- interceptor因为属于mvc容器只能对contrler的action请求起作用,filter则拦截所有的请求,比如对静态资源的拦截过滤。
- 既然访问interceptor对action起作用那他就可以获取方法上下文、栈里的参数,而filter不行。
- interceptor可以获取spring容器中的各个bean,而filter就不行,因为他不归spring容器管理,所以可以在interceptor里注入一个service来使用。
二、另外一点,我们来看下interceptor,filter的执行顺序:绿色表示interceptor的作用范围,可以看到它包裹了controller,黄色代表Filter 它包裹了所有
可能这还不是全部,剩下的希望留给读者去细究,但从整体上我们了解了他们区别,只能说带给大家一些思考,个人理解有所纰漏,还请老铁们多多指教!
猜你喜欢
- 2024-11-04 【快学springboot】12.实现拦截器
- 2024-11-04 Spring Boot 中的拦截器和过滤器到底有什么区别?
- 2024-11-04 SpringBoot中的过滤器和拦截器有什么区别?
- 2024-11-04 为什么你写的拦截器注入不了Java bean?
- 2024-11-04 使用Spring Cloud Zuul实现过滤器或拦截器功能案例
- 2024-11-04 java服务-springboot拦截器实现用户登录Token及权限校验
- 2024-11-04 JAVAEE就业工程师教程之第4章 Struts2拦截器
- 2024-11-04 Spring框架功能分为哪些模块?(spring框架有哪几部分组成)
- 2024-11-04 高级码农Spring Boot实战进阶之过滤器、拦截器的使用
- 2024-11-04 轻量级 Java 权限认证框架Sa-Token初体验(五)
你 发表评论:
欢迎- 最近发表
-
- pyinstaller打包python程序高级技巧
- 将python打包成exe的方式(python打包成exe的方法)
- Python打包:如何将 Flask 项目打包成exe程序
- py2exe实现python文件打包为.exe可执行程序(上篇)
- 如何将 Python 项目打包成 exe,另带卸载功能!
- Python打包成 exe,太大了该怎么解决?
- 可视化 Python 打包 exe,这个神器绝了!
- 案例详解pyinstaller将python程序打包为可执行文件exe
- Cocos 3.x 菜鸟一起玩:打包window程序
- 怎么把 Python + Flet 开发的程序,打包为 exe ?这个方法很简单!
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)