什麼是攔截器?
攔截器是指通過統一攔截從瀏覽器發往服務器的請求來完成功能的增強
使用場景:解決請求的共性問題(如:亂碼問題、權限驗證問題等)
攔截器的基本工作原理:
- Spring MVC可以通過配置過濾器來解決亂碼問題
- 攔截器的工作原理和過濾器非常相似
攔截器的實現:
- 編寫攔截器類實現HandlerInterceptor接口
- 將攔截器註冊進SpringMVC框架中
- 配置攔截器的攔截規則
攔截器方法介紹:
preHandler:擁有返回值:表示我們是否需要將當前的請求攔截下來。如果返回false,請求將被終止;如果返回true,請求會被繼續進行。object ogr2
postHandler:
afterCompletion:
在一個應用中如何配置對個攔截器?
攔截器的其他實現方式:
- WebRequestInterceptor方法:
攔截器的類還可以通過實現WebRequestInterceptor方法接口來編寫
向SpringMVC框架註冊的寫法不變
弊端:perHandler方法沒有返回值,不能終止請求
攔截器的使用場景:
使用原則:處理所有請求的共同問題
- 解決亂碼問題
- 解決權限驗證問題