request.setcharsetencoding(「utf-8」),這個語句只對post形式的提交方式有效,而對get方式提交無效。
① 在更改tomcat設定,如果想在之後的專案當中不再重新設定,而是一次設定長期使用的話,建議在tomcat伺服器之上設定,具體路徑如下:c:\apache-tomcat-6.0.32\conf\server.xml。開啟這個配置檔案之後,搜尋8080得到這個配置
增加幾條配置語句之後變為
這樣在專案當中就不用顯式的設定了,
直接使用request.setcharacterencoding("utf-8");即可。
② 在使用這個編碼之前,必須將專案所在資料夾下的tomcat本地服務的配置檔案設定成相應的格式,即d:\test\servers\tomcat v6.0 server at localhost-config\server.xml檔案設定為相同格式即可。
在程式中設定**如下:
string temp = request.getparamer(「username」);
string username = new string(temp.getbytes(「iso8895-1」),」utf-8」);
就是說,預設的get方式提交使用的是iso8895-1編碼,只要把編碼格式更改一下即可。
終極解決GET方式中文亂碼
想重定向到錯誤提示頁面,並帶上錯誤資訊,實現方式是統一的controller異常處理器,攔截到異常,獲取異常響應型別是rest responsebody 還是頁面,若是頁面,則重定向到統一的錯誤頁面,帶上自定義異常的錯誤資訊,問題來了.若是中文錯誤資訊,在異常處理器中拿redirectattribu...
以get方式提交中文引數亂碼的解決方法
在用get提交時,如果含有中文,就會出現類似於 的亂碼問題。為什麼會這樣呢,造成這種現象的原因是tomcat對get和post兩種提交方式的處理方法不一樣造成的。自從tomcat5.x開始,get和post方法提交的資訊,tomcat採用了不同的方式來處理編碼。對於post請求,tomcat使用re...
解決get請求方式中文亂碼經驗總結
平常會遇到一些特殊的請求情況,通過get請求方式拼接一些中文引數,如果不進行處理就會出現中文亂碼問題。經驗有限,經總結下來共有兩種方式,任選其中一種即可,注意不可同時都使用。1.通過tomcat配置解決中文亂碼。修改tomcat中conf資料夾下server.xml檔案,在裡面新增 uriencod...