Jsp文件中會出現下面所示的編碼指定方式:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8″>
Meta標簽中的charset是在contentType未指定編碼時采用的默認編碼格式
Tomcat讀取JSP文件時采用的編碼
pageEncoding="utf-8" --該jsp文件自身采用的編碼格式,也就是告訴服務器使用什么編碼翻譯jsp文件成java文件
Tomcat返回響應時采用的編碼
contentType="text/html;charset=utf-8"服務器發送瀏覽器的數據類型和內容編碼。其中charset="utf-8"--用來指定Tomcat返回響應時采用的編碼,也是post方式提交參數的編碼方式。
瀏覽器顯示HTML時采用的編碼
瀏覽器的編碼格式的設置
Post提交亂碼
jsp中post表單的編碼由pageEncoding和contentType參數決定,以pageEncoding為准,如果沒有pageEncoding則以contentType為准,如果沒有contentType以Meta標簽中的charset為准,都沒有則以ISO-8859-1編碼
入庫亂碼
查看日志接受時中文,入庫后庫中為亂碼。vi /etc/my.ini修改如下配置
[mysql] #設置mysql客戶端默認字符集 default-character-set=utf8 [mysqld] #服務端使用的字符集默認為8比特編碼的latin1字符集 character-set-server=utf8 [client] default-character-set=utf8