天天看點

過濾器(Filter)和攔截器(interceptor)差別

一:過濾器是Servlet中的對象

攔截器是架構中的對象,是基與web架構的

二:過濾器實作Filter接口的對象

攔截器是實作HandlerInterceptor

三:過濾器是用來設定request,response 參數,屬性,側重于對資料的過濾

攔截器是用來驗證請求的,能截斷請求。

四:過濾器是在攔截器之前執行的。範圍上來說,過濾器範圍更大

五:過濾器是tomcat伺服器建立的對象

攔截器是springmvc容器建立的對象

六:過濾器是一個執行的時間點,隻在容器初始化調用一次

攔截器有三個執行時間點,分别對應三個方法 preHandle() ,postHandle() ,afterCompletion()

七:過濾器可以處理jsp,js,html 等等

攔截器側重于攔截Controler的對象,如果你的請求不能被DispatcherServlet接收,這個請求不會執行攔截器内容

八:攔截器攔截普通類方法

過濾器過濾Servlet請求響應