hibernate插入Mysql数据库出现中文乱码情况从这5个方面解决

时间:2022-06-13 07:31:46

因为有了新电脑所以又要解决乱码问题,在网上找帖子很是头疼,还是自己总结一下比较好。

hibernate插入Mysql数据库出现中文乱码情况从这几个方面解决:有了这几方面以后使用mysql的乱码问题就不用到处百度看帖子了,自己总结几点。

(建议所有编码都一直改为“utf8”的编码)

1,设置MyEclipse的编码情况

进入Window--Preferences--General--Workspace,Text file encoding 选项中默认的Default(GBK)选项更改为Other,并将值设为utf-8;

hibernate插入Mysql数据库出现中文乱码情况从这5个方面解决

2,进入Window--Preferences--MyEclipse--Files and Editors,将这个选项下面的:ASP and PHP、CSS、DTD、HTML、JSP、XML中的字符编码全部更改为utf-8;

hibernate插入Mysql数据库出现中文乱码情况从这5个方面解决

3,最重要的是设置mysql的字符集编码:

可以按照我以前写的文章设置http://blog.csdn.net/tuke_tuke/article/details/48415791

4,设置完成后还要设置MySQL的默认字符集编码default-character-set

在安装路径的bin目录下的my.ini文件,改成如下:原来mysql默认的latin1字符集

hibernate插入Mysql数据库出现中文乱码情况从这5个方面解决

5,还是不行的话,可以修改数据库连接路径加上useUnicode=true&characterEncoding=UTF8

<property name="connection.url">jdbc:mysql://localhost:3306/heritationtwo?useUnicode=true&characterEncoding=UTF8</property>
hibernate插入Mysql数据库出现中文乱码情况从这5个方面解决

到这里也差不多没有问题了,如果在浏览器上显示有中文乱码问题的话

a、如果有必要的话,将所有JSP页面头上都加上这行代码:<%request.setCharacterEncoding("UTF-8"); %>,防止页面传值的时候乱码;
b、如果有调用Servlet文件的时候,在Servlet文件中加上如下两行代码 :

request.setCharacterEncoding("UTF-8");  
response.setCharacterEncoding("UTF-8");