zoukankan      html  css  js  c++  java
  • 中文乱码总结之JSP乱码

    一、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

  • 相关阅读:
    Matlab编辑器背景修改
    Booksim的运行
    illustrator画梯形
    latex去掉页眉
    latex字体颜色
    latex字体
    Methods to reduce the number of pipeline stages
    Basic Router Architecture
    Linux /sbin/service脚本一个基本无影响的bug
    HTML5实战之桌面通知
  • 原文地址:https://www.cnblogs.com/XiDaPuBen/p/9176865.html
Copyright © 2011-2022 走看看