JSP頁面亂碼的幾種解決方案
阿新 • • 發佈:2019-01-26
1.檢視jsp檔案頭是否設定了編碼格式:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
順便設定:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
2.檢視專案的編碼格式:設定為UTF-8
project–》properties:
jsp檔案如果是直接複製的,也要檢視一下,右鍵jsp檔案,選擇properties,設定編碼格式:
3.上面一般解決的是頁面本身中文的亂碼,如果還有問題,比如提交的表單亂碼等問題,需要在請求頭響應頭設定編碼:
//設定編碼格式
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
4.最後還沒解決亂碼的話,設定tomcat伺服器編碼格式,預設情況下,tomcat使用的的編碼方式:iso8859-1,開啟setting.xml檔案(在tomcat資料夾conf中)
找到如下程式碼:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
這段程式碼規定了Tomcat監聽HTTP請求的埠號等資訊。
可以在這裡新增一個屬性:URIEncoding,將該屬性值設定為UTF-8,即可讓Tomcat(預設ISO-8859-1編碼)以UTF-8的編碼處理get請求。
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />