新手再问一个老问题-----mysql中文显示(实在没办法了)
我用struts+hibernate建立一个项目,数据库用的是mysql 5.1.
1、在hibernate配置文件中写了
jdbc:mysql://localhost:3306/struts?useUnicode=true&characterEncoding=gbk,
2、然后在mysql中建立相应的表,并设置为
ENGINE=MyISAM AUTO_INCREMENT=30 DEFAULT CHARSET=gbk;
3、对于项目的所有的jsP文件都在首句写了
问题:
1、插入记录后,在MySQL Administrator不能显示中文,显示乱码或“?”;
2、查询记录,不jsp页面中显示与在MySQL Administrator中相同的乱码。
注:在网上找好多方法,都没办法解决中文显示问题,望高手指导。
------解决方案--------------------
你的SQL语句起始处加语句‘set names gbk;’
------解决方案--------------------
使用UTF8 就什么问题都没有了
------解决方案--------------------
这是因为你的客户端的编码方式并没有改变,默认的是latin1,可以用show variables查看。修改配置文件,将所有latin1的变量,替换为gbk就ok了
------解决方案--------------------
+--------------------------+----------------------------------------------------
-----+
| 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.2/share/chars
ets/ |
+--------------------------+----------------------------------------------------
-----+
8 rows in set (0.01 sec)
我的经过查资料弄成这样了,还是输入中文有问题 2003操作系统
------解决方案--------------------
请将jdbc:mysql://localhost:3306/struts?useUnicode=true&characterEncoding=gbk修改为jdbc:mysql://localhost:3306/struts?useUnicode=true
试一下
微信 赏一包辣条吧~
支付宝 赏一听可乐吧~