中文乱码问题真的非常让人头疼,有时候为了解决问题,会付出很长时间,我提供一下我解决问题的方案,供您参考。
1,首先如果可以重新安装数据库的话,重新安装一下,编码格式改为utf-8,然后更改数据库配置文件my.ini(在数据库的安装路径可以找到),在此文件下查找default-character-set属性,并将其值更改为utf8(注意:不是utf-8,也要注意大小写),这里需要将default-character-set属性全部属性的值修改为utf8。示例:
default-character-set = utf8
提示:default-character-set属性有两个,一个在[mysql]下面,另外一个在[mysqld]下面。另外,如果你的数据库在改完utf8之后无法完成中文数据的插入,那么将[mysql]下的改为gbk,问题会解决。
2、同时创建hibernate数据库时需要显示设置数据库的编码方式为utf8。示例:
create database daycode default charset=utf8;
3、做完这两步还是不行,需要修改hibernate的配置文件hibernate.cfg.xml,在配置文件配置hibernate.connection.url属性。示例:
<property name="hibernate.connection.url">
<![CDATA[jdbc:mysql://localhost:3306/daycode?useUnicode=true&characterEncoding=utf8]]>
</property>
注意:此字符串不能写为jdbc:mysql://localhost:3306/daycode?useUnicode=true&characterEncoding=utf8,不然会出现编译错误,错误提示为将&连接符改为;。
4、要注意progect的编码格式,gbk和utf8都可以,看具体情况。
版权声明:本文为CSDN博主「Peditable」的原创文章,在此基础上加入了自己的情况,遵循CC 4.0 BY-SA版权协议,。
原文链接:https://blog.csdn.net/Peditable/article/details/7047573