Eclipse 提取MySql中文乱码问题和向mysql数据库插入中文乱码问题
一、设置MyEclipse的字符编码,步骤如下:
1、进入Window--Preferences--General--Workspace,Text file encoding 选项中默认的Default(GBK)选项更改为Other,并将值设为utf-8;
2、进入Window--Preferences--MyEclipse--Files and Editors,将这个选项下面的:ASP and PHP、CSS、DTD、HTML、JSP、XML中的字符编码全部更改为utf-8;
*****************************星号中间的3,4两部不用设********************************
3、如果有必要的话,将所有JSP页面头上都加上这行代码:<%request.setCharacterEncoding("UTF-8"); %>,防止页面传值的时候乱码;
4、如果有调用Servlet文件的时候,在Servlet文件中加上如下两行代码:
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
**************************************************************************
二、设置mysql的字符编码
修改my.init配置文件来修改mysql的字符集,请注意在关闭mysql进程后再修改,不然你会发现你每次都白修改了,因为重新启动后没变!
修改my.init中的编码方式为gbk如下 (一定得是gbk 如果是utf8数据库将不能插入中文数据 gb2312也不行)
有两处地方要修改
default-character-set=gbk
三.
解决方法: 在hibernate.cfg.xml中应该这样写
<property name="connection.url">jdbc:mysql://localhost:3306/yinhang?useUnicode=true&characterEncoding=gbk</property>
如果用hibernate.properties #hibernate.connection.url jdbc:mysql://localhost:3306/yinhang?useUnicode=true&characterEncoding=gbk
四:
有了这些设置后你的servlet中不应该再有别的转码方式 否则会出现乱码
|
|