过滤器、拦截器、切面

过滤器、拦截器、切面作用范围

执行顺序:过滤器=>拦截器=>切面

过滤器、拦截器属于请求层面的拦截;切面属于方法层面的拦截

原理不同

过滤器和拦截器底层实现方式大不相同,过滤器 是基于函数回调的,拦截器 则是基于Java的反射机制(动态代理)实现的。

范围不同

我们看到过滤器 实现的是 javax.servlet.Filter 接口,而这个接口是在Servlet规范中定义的,也就是说过滤器Filter 的使用要依赖于Tomcat等容器,导致它只能在web程序中使用。

而拦截器(Interceptor) 它是一个Spring组件,并由Spring容器管理,并不依赖Tomcat等容器,是可以单独使用的。不仅能应用在web程序中,也可以用于Application、Swing等程序中。

具体参考过滤器、拦截器、切面异同

相关推荐
华仔啊19 分钟前
别再问了!Java里这几种场景,用抽象类就对了
java·后端
明天过后012236 分钟前
PDF文件中的相邻页面合并成一页,例如将第1页和第2页合并,第3页和第4页合并
java·python·pdf
tingting011938 分钟前
Spring Boot 外部配置指定不生效的原因与解决
java·spring boot·后端
用户0332126663671 小时前
Java 设置 Excel 行高列宽:告别手动调整,拥抱自动化高效!
java·excel
2501_909686701 小时前
基于SpringBoot的网上点餐系统
java·spring boot·后端
neoooo1 小时前
Spring Boot 3 + Kafka 实战指南
java·spring boot·kafka
天天摸鱼的java工程师1 小时前
聊聊线程池中哪几种状态,分别表示什么?8 年 Java 开发:从业务踩坑到源码拆解(附监控实战)
java·后端
杨杨杨大侠1 小时前
第4篇:AOP切面编程 - 无侵入式日志拦截
java·后端·开源
末央&1 小时前
【JavaEE】文件IO操作
java·服务器·java-ee