Thymeleaf渲染網(wǎng)頁時(shí)中文亂碼的問題及解決
Thymeleaf渲染網(wǎng)頁時(shí)中文亂碼
問題場(chǎng)景
在基于 Thymeleaf 的 html 模板中我使用了一些半角冒號(hào),結(jié)果顯示網(wǎng)頁的時(shí)候這些半角冒號(hào)卻是“??”,估摸著跟中文的編碼問題有關(guān),于是我加入了一些中文,結(jié)果這些中文也是顯示亂碼。
解決方案
首先在注冊(cè) Thymeleaf 的時(shí)候模板解析器 TemplateResolver 設(shè)置編碼為“UTF-8”。
然后 Thymeleaf 視圖解析器的配置處也需要設(shè)置編碼為“UTF-8”。
以上兩者缺一不可,否則中文還是亂碼。
注意:網(wǎng)頁內(nèi)容的編碼方式別忘了(<meta charset="UTF-8" />)
Thymeleaf的th:href傳遞多個(gè)參數(shù)出現(xiàn)亂碼
以下代碼,按照jsp的思維來說是可行的,但是在項(xiàng)目的請(qǐng)求路徑中出現(xiàn)亂碼:
<a th:href="@{/index/showCategorys?desc=0¤tPage=${currentPage}}" rel="external nofollow" ">文章分類</a>
查了以下資料解決了,這是因?yàn)門hymeleaf已經(jīng)封裝好了多參數(shù)鏈接的使用方式,應(yīng)該形如:
th:href=@{/url/action(id=${id},name=${name))}
這樣的方式使用,其中的/url/action是請(qǐng)求路徑,()中的參數(shù)以,隔開即可。
并且要注意,在使用多參數(shù)連接時(shí)不能用字符串拼接形式。
th:href=@{|/url/action(id=${id},name=${name)|}???????
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring Boot實(shí)現(xiàn)文件上傳示例代碼
本篇文章主要介紹了Spring Boot實(shí)現(xiàn)文件上傳示例代碼,可以實(shí)現(xiàn)單文件和多文件的上傳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03Jenkins使用Gradle編譯Android項(xiàng)目詳解
這篇文章主要介紹了Jenkins使用Gradle編譯Android項(xiàng)目詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07在IntelliJ IDEA中為自己設(shè)計(jì)的類庫(kù)生成JavaDoc的方法示例
這篇文章主要介紹了在IntelliJ IDEA中為自己設(shè)計(jì)的類庫(kù)生成JavaDoc的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08Spring Boot jar可執(zhí)行原理的徹底分析
這篇文章主要給大家介紹了關(guān)于Spring Boot jar可執(zhí)行原理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Java使用代理進(jìn)行網(wǎng)絡(luò)連接方法示例
這篇文章主要介紹了Java使用代理進(jìn)行網(wǎng)絡(luò)連接方法示例,內(nèi)容十分詳細(xì),需要的朋友可以參考下。2017-09-09springcloud?gateway高級(jí)功能之集成apollo后動(dòng)態(tài)刷新路由方式
這篇文章主要介紹了springcloud?gateway高級(jí)功能之集成apollo后動(dòng)態(tài)刷新路由方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08Flink流處理引擎零基礎(chǔ)速通之?dāng)?shù)據(jù)的抽取篇
今天不分享基礎(chǔ)概念知識(shí)了,來分享一個(gè)馬上工作需要的場(chǎng)景,要做數(shù)據(jù)的抽取,不用kettle,想用flink。實(shí)際就是flink的sql、table層級(jí)的api2022-05-05