1.运行顺序不同
过滤器是在客户端请求到达服务器,但还未到Servlet时运行的,而拦截器是在到达Servelt后,调用适配器(HandlerAdapter)前运行的。
2.配置方式不同
过滤器是在web.xml中配置,而拦截器是在Spring中的配置文件中配置,并且拦截器可以设置哪些请求可以不通过拦截器,而过滤器不能直接设置。
3.依赖性不同
Filter是依赖与Servlet容器的,而Interceptor依赖与SpringMVC。
4.操作的范围不同
Filter只能对HttpServletRequest和HttpServletRespones进行操作,而拦截器可以操作更多的参数。