我在页面获取的汉字,统编码都是GBK,数据库编码也是GBk,数据库连接字符也指定defaultEncoding=gbk  
request.setCharacterEncoding("GBK");也用了,并在屏幕上输出也没出现乱码,但是一存进数据库就出现乱码了但存进数据库的汉字就是一堆问号。希望大家帮帮忙;

解决方案 »

  1.   

    从后台读不乱码,更新时或插入时会出现乱码。我用NEtbeans
      

  2.   

    这东西基本可以算没用过, 用myeclipse都.!  那估计是你环境的问题了.!
      

  3.   

    对建议你用Myeclipse,并且现在公司开发都是用的MyEclipse了!
      

  4.   

    这个问题我也遇到过
    查出来显示没问题  存进去就乱码
    编码每个地方都设计了.
    记得我这样弄的
    String name=request.getParameter("name");
    name=new String(name.getBytes("ISO8859_1");
    然后存进去就没问题了其实乱码最简单的解决办法是弄个filter
    以后就可以高枕无忧了..
      

  5.   

    Mysql 中除了库、表以外,每个字段也是可以单独设置编码的,楼主看看具体字段的编码是不是有问题
      

  6.   

    如果数据库乱码的话使用10#的方法,如果页面乱码的话;
    在页面上加个request.setCharacterEncoding("utf-8");
      

  7.   

    mysql很多级别上都有编码设置的,其实存进去为乱码倒是没多大关系,关键是显示出来不乱码就行了
      

  8.   

    这个是MySQL一直以来的问题,如10楼中安装的时候要设置字符集,还要在数据库链接时加入如下语句:jdbc:mysql://localhost/DB?autoReconnect=true&useUnicode=true&characterEncoding=GBK,获取字符串时改为如:new String(name.getBytes("ISO8859_1"),"GBK");
      

  9.   

    这个看下是否是从jsp页面获取中文的时候就出现乱码
      

  10.   


    我同意你的看法
    应该是楼主 安装时没有选择GBK  所有存在 后台打印正常  存进数据库却是乱码
    测试的唯一标准 用别人的机器客户端 连你的数据库 看看是否正常 正常 说明的确安装有问题
      

  11.   

    不管什么问题,MYSQL重新修复下,到10楼说的地方注意GBK就应该可以了
      

  12.   

    tonyzzp 说的是个解决办法,你可以加上过滤器,在web.xml里配置下。这样可以彻底解决问题
      

  13.   

    我的MySQL是从老师那复制来的,那应该怎么设置字符集呢?但是我建表时 也用了default character set gbk命令了啊
      

  14.   

    ===============================================
    String name=request.getParameter("name");
    name=new String(name.getBytes("ISO8859_1","GBK");
    ===============================================用这个没错!!
      

  15.   

    手动直接往数据库中插入汉字字段,你看乱码吗?
    如果不乱,那就是jsp编码问题,否则就是数据库设置的问题
      

  16.   

    数据库 编码用 utf-8  就会好了
      

  17.   

    你确定你数据库的编码全部都是GBK的,你show一下你的数据库编码就知道了,看看是不是
      

  18.   

    谢谢大家问题解决了。是我把连接字符串写错了,应该是
    "jdbc:mysql://localhost:3306/boke?characterEncoding=gbk"被我写成"jdbc:mysql://localhost:3306/boke?defaultEncoding=gbk"了,以前就犯过这样的错误,感谢各位的热心解答