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