日期:2014-05-20  浏览次数:20663 次

java相关乱码问题的总结
一、我们在用MyEclipse的时候一般会出现以下几种乱码(目前自己遇到的)
1.jsp乱码;
2.java文件乱码;
3.写入数据库时,数据库中出现乱码;
(一)其中jsp,java的乱码,只要在相应的myeclipse上设置对应的编码很容易就可以解决,具体操作如下
引用
http://xxxxxiaoxue-163-com.iteye.com/blog/1116783

(1)Window-->Preferences-->General -->content Types 在右侧选择对应的文件,在右下侧的Default encoding窗口处 输入 UTF-8点击更新即可;
(2)设置默认的保存编码格式
        Window-->Preferences-->General -->WorkSpace 在右侧选择对应的Text file encoding ->Other 修改对应的编码(可以统一成UTF-8)
(3)单个文件编码修改(项目的则在项目名上右键)
        如文件Test.java上右键-->Properties-->Resource在右侧Text file encoding ->Other,可以进行修改。
(4)指定MyEclipse编写文件时页面内容数据编码格式
     主要是通知浏览器或服务器,传输的数据的编码格式
       window-->Preferences-->MyEclipse-->Files and Editors-->选择子项-->Encoding
(二)对于数据库的乱码(以mysql为例)
1.数据库自身存入数据时就有乱码;
2.通过第三方软件存入时有乱码;
3.通过写程序存入数据库时有乱码;
对于第1种,那就是数据库配置的问题,可以选择mysql的配置向导进行配置一下,在建表的时候选择对应的编码就可以解决。
对于第2种情况,针对不同的软件情况也不一样,大概也就是编码的配置问题;
针对第三种情况,就是在插入数据的过程中,转换的编码可能和数据库中的编码不一致,这里暂时先举一例:
如:hibernate.cfg.xml可以在连接数据库代码后面加上以下两个属性以解决问题:
        <property name="connection.useUnicode">true</property>
        <property name="connection.characterEncoding">utf-8</property>