完整報錯如下:
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.
Mon Nov 19 10:43:58 CST 2018
There was an unexpected error (type=Not Found, status=404).
No message available
上面這句話大概的意思是,“這個應用沒有明確的映射/錯誤,所以你才會看到這樣一個返回結果”,這是我自己翻得,將就可以看,英語好的童鞋勿笑話哈。其實,我翻完之后都在想沒有明顯的問題是什么玩意,我又看到下面404心里就踏實了。
谷歌一下,針對以上錯誤出現的可能有一下幾點:
一. Application啟動類的位置不對
要將Application類放在最外側,即包含所有子包spring-boot會自動加載啟動類所在包下及其子包下的所有組件(有點不明覺厲的感覺,下面我們舉個例子讓這就話落落地讓我們這種普通人也能看得懂)
這兒我總結了目前確認了三種錯誤案例
第一種,Application啟動類直接放在了java包下面,這個在編譯器就會報錯
第二種,controller類跟Application啟動類在同級包的不同包下邊
第三種,啟動類范圍小於組件的位置范圍
正確位置:在組件的同包或者組件的外層包內都可以,總之啟動類的位置范圍應大於或者等於組件所在位置。(原因就是上面那句不明覺厲的話)
二. 視圖解析器的配置問題
在springboot的配置文件:application.yml或application.properties中關於視圖解析器的配置問題(暫未碰到,后期碰到后再補充):
當pom文件下的spring-boot-starter-paren版本高時使用:spring.mvc.view.prefix/spring.mvc.view.suffix
當pom文件下的spring-boot-starter-paren版本低時使用::spring.view.prefix/spring.view.suffix
三. 控制器的URL路徑書寫問題:
@RequestMapping(“xxx”) ,實際訪問的路徑與”xxx”不符合