新手问一个老问题-----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文件都在首句写了
<%@ page contentType= "text/html;charset=gbk " language= "java "%>
问题:
1、插入记录后,在MySQL Administrator不能显示中文,显示乱码或“?”;
2、查询记录,不jsp页面中显示与在MySQL Administrator中相同的乱码。
注:在网上找好多方法,都没办法解决中文显示问题,望高手指导。
------解决方案--------------------我觉得你没有说清楚你的中文乱码从哪里开始成乱码!!
1、插入记录后,在MySQL Administrator不能显示中文,显示乱码或“?”;
2、查询记录,不jsp页面中显示与在MySQL Administrator中相同的乱码。
我觉得第一个你看看是不是你页面字符编码所致.或是数据库设置字符编码所致.或是服务器编码所致!
我建议你可以.第一步,从页面输入中文,在你插入数据库前在后台打印出来.是否成乱码了??
第二.插入后,你查看数据库里的中文是否成乱码了.
第三.插入成功后,查询出来是否成乱码了?
如果有ACTION 再看页面的是否正赏显示了.
这样你就可以找出问题出在哪个环节的字符编码上.再针对的解决@!@
------解决方案--------------------安装mysql的时候 ,注意选择自定义安装 ,步骤中有个选择编码的 ,我一般选uft8, 以后建表、jsp页面什么的, 都用utf8 编码 —— 一切正常