=========背景
开发语言:java 1.5
环境:tomcat 5.5,mysql 5.0=========已采取措施
1·所有的jsp页面的html代码头已设成charset=GBK
2·链接数据库的字符串已加useUnicode=true&characterEncoding=GBK
3·web.xml里已加入中文转换过滤器
4·mysql数据库已alter database charset=GBK
5·mysql数据库的default charset = GBK
6·用来恢复数据库的.sql文件前面已加set names = GBK
7·在控制台用show variables like '%char%';的结果如下
+--------------------------+----------------------------------------------------
-----+
| Variable_name            | Value
     |
+--------------------------+----------------------------------------------------
-----+
| character_set_client     | gbk
     |
| character_set_connection | gbk
     |
| character_set_database   | gbk
     |
| character_set_filesystem | binary
     |
| character_set_results    | gbk
     |
| character_set_server     | gbk
     |
| character_set_system     | utf8
     |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.0\share\chars
ets\ |
+--------------------------+----------------------------------------------------
8·在插入sql时,已对中文字符串进行从iso-8898-2到GBK的转换=========症状描述
插入中文,在数据库中变成了?,因此在jsp页面上显示时也自然是?了捣鼓一星期了,愣是没解决。哪个大虾给偶看看。。

解决方案 »

  1.   

    另外,由于我的程序最后是传到第三方的虚拟主机上的,所以不便于修改mysql的my.ini
      

  2.   

    我觉得你可以测试一下,把My.ini改了,看看显示的还是乱码不
      

  3.   

    不便于修改mysql的my.ini 不要紧,测试一下应该还是可以的吧
      

  4.   

    1、
    set   names   =   GBK 改为:
    set   names   GBK;
    2、
    看到这里了没有?
    ¦   character_set_system           ¦   utf8 你保证你在你的配置文件里面写了?
    [client]
    default-character-set=gbk
    [mysqld]
    default-character-set=gbk
      

  5.   

    sigh
    大虾,我改了,还是没用
      

  6.   

    配置文件概率后记得重新启动MYSQLD
      

  7.   

    ¦   character_set_system           ¦   utf8 
    这个按照我说的改了后有了变化没有?
    还有你插入的数据原来是什么编码的,是GBK吗?