过滤器 拦截器
过滤器(Filter) 拦截器(Interceptor)
两个的执行顺序不一样
1、SpringBoot启动时,会启动Tomcat,然后启动Servlet,此时 Filter 已经开始拦截了。
2、SpringBoot启动完之后,Interceptor 才会开始对新进来的请求进行拦截。
拦截顺序图解:
1、项目启动( Tomcat启动,servlet启动,此时Filter的init()方法启动,可以看到控制台直接打印了 init() 方法的内容 )
init()方法启动
2、前端/其他系统 发起请求之后,调用你的controller之后,顺序是:经过 Filter(过滤器) — > Interceptor(拦截器) --> Controller 。当项目停止时,则执行 Filter的 destory() 方法,下面是图解
3、过滤器,拦截器里面需要实现的方法不细说,自己去看,此处只强调执行的顺序。