在Springboot項目中, 攔截器也是開發中常用手段,要來做登陸驗證、性能檢查、日志記錄等。寫個例子看看,一個攔截器、一個配置類、一個攔截器要攔截的類。

第一攔截器,這個攔截器要實現HandlerInterceptor接口,這個接口里有四大方法,preHandle是在請求controllor前調用,postHandler在調用Controller方法之后、視圖渲染之前調用,afterCompletion是在渲染視圖完成之后使用,afterConcurrentHandlingStarted方法用來處理異步請求。

在攔截器配置類class上使用要注解@Configuration,這里要實現接口WebMvcConfigurer。
老版本呢是繼承WebMvcConfigurerAdapter,不過新版本已經放棄了,推薦用上面的方式。

重寫addInterceptors方法,這個方法里呢要配置兩項,一個是攔截器,一個是攔截器的URL。 例子里指明了攔截器Test1Interceptor,攔截的url "/hello/**"。

寫一個控制類,接下來就可以請求了,請求被正確響應。

控制台也正常輸出了攔截器打印信息。

測試成功!說明各項配置都是正確的,沒毛病!