码迷,mamicode.com
首页 > Web开发 > 详细

中文乱码总结之JSP乱码

时间:2018-06-13 15:14:03      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:中文   mysql   情况   纠正   设置   表单   修改   res   自动   

一、JSP中文乱码问题

JSP页面的汉字显示为乱码,而英文和阿拉伯数字正常。

 技术分享图片

 

二、原因

汉字编码时用的字符集 与解码用的字符集不一致;所有的字符集都兼容ASCII码,所以英文数字不存在乱码。

编号

名称

单字长度

能否对汉字编码

ASCII

美国信息交换标准代码

7bit

ISO-8859-1(Latin1)

西文编码

8bit

GBK(ANSI)

汉字内码扩展规范

英文单字节,中文双字节

UTF-8

万国码

1~4个字节

注: GBK(“国标扩展”的拼音首字母)是对GB2312的扩展

三、方法

1. 通过Page指令的pageEncoding属性,指明JSP源文件使用哪个字符集编码。

2.在未告知的情况下,浏览器自动选择的解码字符集与网页的编码不一致:

l  浏览器用户手动纠正:查看->字符编码-> UTF-8或GBK

l  在JSP中使用response.setContentType(“text/html; charset=UTF-8”)明示

3. 用户通过HTML表单提交了中文,但是Tomcat、MySQL的默认字符集是ISO-8859-1。

l  对应POST表单,通过request. setCharacterEncoding(charset)明确告诉Tomcat用什么字符集;

对于GET表单,修改Tomcat/conf/server.xml中HTTP Connector的属性

useBodyEncodingForURI=”true”  或者  URIEncoding=”UTF-8”

l  将MySQL的字符集,设置为UTF-8或GBK

 

结论:默认靠不住,最好明确指定UTF-8GBK

中文乱码总结之JSP乱码

标签:中文   mysql   情况   纠正   设置   表单   修改   res   自动   

原文地址:https://www.cnblogs.com/XiDaPuBen/p/9176865.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!