我的Web應用程序(Java/Tomcat/Spring/Maven)在處理特殊字符(如’
(十六進制92,十進制146))時遇到問題。這是作爲另一個奇怪的角色進入我的應用程序。Spring/Tomcat不遵守UTF-8編碼?
我已經看過this question和核實II在我所有的JSP文件,下面一行:
<%@ page contentType="text/html; charset=UTF-8" %>
我也看了this question和驗證,我有以下行我的Maven的pom.xml:
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
因此,據我所知,一切都應該以UTF-8編譯和處理。但是,當我提交字符串Martin’s Auto Repair
在彈簧綁定過程中顯示在服務器上的是Martinâ\u0080\u0099s Auto Repair
。這是由Tomcat交給我的應用程序的字符串。
更糟糕的是,這會回傳給瀏覽器,因此再次提交已更改的字符串會一次又一次地展開奇怪的字符。
有什麼建議嗎?在這一點上,我不確定這是瀏覽器問題還是服務器問題。
您是否也將_requests_作爲UTF-8處理?你叫什麼來提交?作爲查詢參數? – fge