springMVC 过滤器与拦截器的执行顺序问题。springboot一样参考
生活随笔
收集整理的這篇文章主要介紹了
springMVC 过滤器与拦截器的执行顺序问题。springboot一样参考
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近項目要搞國際化,發現做國際化的時候是需要添加攔截器的,但是我們項目是通過filter過濾器做登錄攔截,此時的報錯信息總是國際化失敗。折騰半天發現原因是國際化的攔截器沒有用到導致。所以在此研究了下過濾器和攔截器的執行順序問題。
先寫結論:過濾器在攔截器之前執行,這也是我國際化失敗的原因
分析:
過濾器:最常見的用法就是對所有請求的字符集進行統一,org.springframework.web.filter.CharacterEncodingFilter,也有用他做權限訪問控制、過濾敏感詞匯、壓縮響應信息等一些高級功能。filter是一種servlet技術,Servlet API中提供了一個Filter接口。
攔截器:SpringMVC 攔截器也是Aop(面向切面)思想構建,但不是 Spring Aop 動態代理實現的, 主要采用責任鏈和適配器的設計模式來實現,直接嵌入到 SpringMVC 入口代碼里面。依賴于web框架,只能對Controller請求做攔截,對其他比如直接訪問靜態資源的請求則沒辦法進行攔截處理
?
?
總結
以上是生活随笔為你收集整理的springMVC 过滤器与拦截器的执行顺序问题。springboot一样参考的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特殊空格的坑,原来空格可以有好多种
- 下一篇: spring mvc 总体启动流程