本人在Jsp页面中,输入汉字,数据库却存储些乱码,进而在JSP页面上查询数据库上的信息,刚才输入的汉字信息则以“???“显示。如果之前在数据库中存储汉字,JSP中可以正常显示。请问是什么原因?
本人把自己的配置环境说一下。MyEclipse 6.0,MySQL Server 5.1,Tomcat 5.5,jdk1.6.0_14。
mysql的my.ini文件中
default-character-set=gbk,
# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=gbk
JSP中添加了<%@page contentType="text/html;charset=GBK"%>
<%@page pageEncoding="GBK"%>
<%
request.setCharacterEncoding("GBK");
%>
在url中也加了useUnicode=true&characterEncoding=GBK
结果还是这样。谁能麻烦帮我解释解释原因,以及问题出在哪。我有代码,如果想要给我发邮件[email protected]

解决方案 »

  1.   

    出现乱码。最好统一所有编码为utf-8!!!
      

  2.   

    数据库的charset设置了,但是还是不好用
      

  3.   

    虽然我不是在安装数据库的时候设置的。我实在my.ini中修改的,然后重启的Mysql的服务器,又重新创建的数据库,表。表的字段均显示是gbk的格式了
      

  4.   

    换成UTF-8的试试
    回复内容不短~~
      

  5.   

    useUnicode=true&amp;characterEncoding=utf-8
      

  6.   

    曾试过UTF-8的,当时数据库是这个格式,也不知道是不是代码没改全,改过一部分之后,JSP页面上汉字也显示不出来了,全市乱码,后来又改回gbk的,才又显示为正常的汉字了
      

  7.   

    只要统一下编码就行了,最好都采用utf8的编码
    mysql   utf-8
    项目工程编码 utf-8
    每个jsp页面编码 utf-8
    必要的将服务器编码改成 utf-8
    最后统一加个过滤器,将编码格式过滤成UTF-8,这样应该不会出现乱码问题了
      

  8.   

    请问过滤器是个什么??怎么用?本人初学JSP,麻烦解释解释呗
      

  9.   

    request.setcharacterset="utf-8"
    response.setcharacterset="utf-8"
      

  10.   

    我想用gbk格式,为什么要改成utf-8?
      

  11.   

    数据库编码设置为gbk或者gb2312
      

  12.   

    将mysql的数据库编码改成GBK  不是在文件里改 要用SQL语言改,你google下怎么改,我就是这个问题。
      

  13.   

    解决了,我将<%@page contentType="text/html;charset=GBK"%>修改为<%@page contentType="text/html;charset=utf-8"%>并将<%@page pageEncoding="GBK"%> 语句删除,就好用了!
      谢谢大家!