1. 程式人生 > >springboot2.0整合thymeleaf的幾個坑

springboot2.0整合thymeleaf的幾個坑

首先注意,是spring boot 2.0,網上很多問題貼,最後的結論都是退回1.5.x等版本,負責任地說,v2.0.3(內建thymeleaf3.0.9)是真的可以的,如果一切都做得對,請清一下maven倉庫試試看。。。。

一開始是狂404 Not Found,找不到模板,application.properites配置對的、templates位置對的……什麼都是對的,但就是404

網上很多帖子說要改thymeleaf依賴版本,貌似也不是問題根源,spring boot 2.0.x版本內建的thymeleaf版本很準確,沒有問題,如果一切都做得對,請清一下maven倉庫試試看。。。。

還有說要加上thymeleaf-layout-dialect依賴的,貌似也不需要,如果一切都做得對,請清一下maven倉庫試試看。。。。

還有controller返回模板路徑字串最前面不要帶“/”的,或者要用@Conrtoller不要用@RestController的,或者不要加@ResponseBody的。。。這都是百分之一萬的新手錯誤,maven倉庫說這鍋我不背,略過不表。。。。。

最後還可能會出現模板解析錯誤(到這裡已經很狂喜了,因為不是404了,至少說明spring boot 2.0可以整合thymeleaf):

thymeleaf.exceptions.TemplateInputException: Error resolving template, template might not exist or might not be accessible by any of the configured Template Resolvers

可能會看到一些帖子說要檢查模板頁裡面正確加thymeleaf名稱空間啊(這個都會寫錯就不要搞軟體了)、html5規範啊(thymeleaf3.0早就不要求嚴格的html5了)等等各種“解決辦法”,但都是個人犯的低階錯誤,如果你一切都做得對,請清一下maven倉庫試試看。。。。

總之,雖然“清maven倉庫”大法確實是一個逆天的存在,但不知道thymeleaf這個東西為什麼如此奇葩,就因為一個大法沒有用,竟然能概率性地出N個問題。