Interceptor和Filter的区别

之前面试贝贝被问到了Interceptor和Filter的区别,我只说了Interceptor是spring级别的,而Filter是java web级别的,这个回答当然是不能使面试官满意的,当然也gg了。在整理一下
Interceptor和Filter的共同点:
都是aop编程思想的体现,都能实现权限检查(登陆验证)、日志记录等
无奈自己对spring深层次的东西了解的太少了,不能展开多说,下去一定要及时补这一块,而且是重点补

菜鸡甜

Interceptor和Filter的不同点:
1)使用范围不同,filter是servlet规范规定的,只能用于web程序中,而Interceptor既可以用于web程序中,也可以用于application、swing程序中
2)规范不同:filter是在servlet规范中定义的,servlet支持,而拦截器是spring容器内的,是spring框架支持的。感觉就是一个是javaweb级别的,一个是spring级别的
3)深度不同:filter只在servlet前后起作用,而interceptor能够深入到方法前后、异常抛出前后等。因此interceptor的使用具有更大的弹性。所以在spring框架中应该优先使用拦截器
4)使用的资源不同,interceptor可以使用spring中的任何资源、对象等,而filter不能

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,948评论 18 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,958评论 6 342
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,367评论 11 349
  • 1.内存泄露 内存泄漏两种情况: 在堆中申请的空间没有被释放(虚拟机gc可以解决) 对象已不在使用,但仍然在内存中...
    Aimerwhy阅读 618评论 0 0
  • 开篇先说三个人性小故事: 1、一对八十多岁的老夫妻,被困在上海的那场大火中,直到浓烟滚滚知道已经逃不出去了,就依偎...
    行走的花儿阅读 686评论 0 0