1. 程式人生 > >JSP頁面亂碼的幾種解決方案

JSP頁面亂碼的幾種解決方案

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" />