1. 程式人生 > >Spring Boot 攔截器無效,不起作用; 原文:https://blog.csdn.net/u012862619/article/details/81557779

Spring Boot 攔截器無效,不起作用; 原文:https://blog.csdn.net/u012862619/article/details/81557779

在Spring MVC中,攔截器有兩種寫法:要麼實現HandlerInterceptor介面,要麼實現WebRequestInterceptor介面,具體內容請看這裡詳述 Spring MVC 框架中攔截器 Interceptor 的使用方法。 
而Spring Boot也只是集成了Spring MVC而已,所以攔截器的寫法還是一樣的。不一樣的是Spring MVC的攔截器需要在xml檔案中配置,而Spring Boot只需要在類上加@Component註解即可,這樣當前攔截器才會被掃描到。 

 

目前(2.0.4.RELEASE版本)WebMvcConfigurerAdapter已過時,如果你執意要用的話,應該沒啥坑。但是被強迫症時刻針對的人,坑就來啦。 
WebMvcConfigurerAdapter過時了,那麼用誰來代替呢?機智的人可能早就發現了,過時的這個只不過是個介面卡(介面卡模式),那就可以直接使用它所實現的那個介面啊,就是WebMvcConfigurer唄。對,就是這個,別猶豫了。。我就被百度坑得不輕,具體說說怎麼被坑的吧。

 

具體配置如下 
必須加上@Configuration註解,這樣裡邊的@Bean才能起作用,Spring才能統一管理當前的攔截器例項。 
addPathPatterns("/api/**")配置攔截路徑,其中/**表示當前目錄以及所有子目錄(遞迴),/*表示當前目錄,不包括子目錄。