Spring boot 2.0 版本報錯 ResourceHttpRequestHandler cannot be cast to HandlerMethod
在控制台的報錯信息為:
java.lang.ClassCastException: org.springframework.web.servlet.resource.ResourceHttpRequestHandler cannot be cast to org.springframework.web.method.HandlerMethod

其根本的原因就在於,Spring boot 2.0對靜態資源也進行了攔截,當攔截器攔截到請求之后,但controller里並沒有對應的請求時,該請求會被當成是對靜態資源的請求。此時的handler就是 ResourceHttpRequestHandler,就會拋出以上的錯誤。
解決方案就是:在攔截器處將靜態資源的請求路徑進行排除
然后再將preHandler加上一層instanceof關鍵字進行判斷


