更新時間:2022-10-25 10:35:39 來源:動力節點 瀏覽1275次
1.攔截器和過濾器體現AOP思想,實現方法的增強,可以攔截請求的方法。
2.攔截器和Filter過濾器可以通過Order Annotation設置執行順序
1.Filter屬于Servlet Level,Interceptors屬于Spring Level
Filter是在javax.servlet包中定義的,依賴于網絡容器,所以只能在web項目中使用。
攔截器是在 SpringMVC 中實現的,歸根結底,最底層的攔截器是一個 Spring Components ,由 Spring Container 管理。
2.過濾器和攔截器的執行順序不同:
這是一張顯示過濾器和攔截器執行順序的圖片
首先,當請求進入 Servlet 之前,過濾器的 doFilter 方法進行過濾,
進入 Servlet 容器后,執行 Controller 的 Before 方法,攔截器的 preHandle 方法進行攔截,
執行Controller的After方法,渲染視圖之前,攔截器的postHandle方法進行攔截,
請求后,執行攔截器 postHandle 方法。
3.基于過濾器的函數回調如何實現,攔截器是基于Java的反射機制實現的。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習