在编码的过程中经常会出现各种各样的乱码问题,下面总结如下:
1.1MySQL乱码问题:
MySQL编码方式不对,往往会导致中文出现乱码。我一般都是使用utf-8编码方式,这种乱码现象就可以有效的解决。首先新建MySQL数据库时,就需要选择utf-8的编码方式。这样其下新建表的默认编码方式即为utf-8。如果导出该表的sql文件,这里面就会有这样一句话:
DEFAULT CHARSET=utf8;
这个表就可以顺利写入中文并保存啦!
在配置文件中,关于数据库的定义如下:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
              <property name="driverClassName" value="com.mysql.jdbc.Driver">
              </property>
              <property name="url"
                     value="jdbc:mysql://localhost:3306/mndpt?useUnicode=true&amp;characterEncoding=GBK">
              </property>
              <property name="username" value="root"></property>
              <property name="password" value="cumt"></property>
       </bean>
&amp;&的转义符,如果在java文件里可以写成
url="jdbc:mysql://localhost:3306/mndpt?useUnicode=true&amp;characterEncoding=GBK";
1.2导出的SQL文件的乱码问题
导出的SQL文件出现乱码,将此SQL文件直接导入会出现不能正确生成数据库的问题。我的解决方案比较傻瓜,即用Utra Editor或者用MyEclipse打开数据库文件的程序打开,这时候所有的sql语句中的汉字将能够正确显示。这时候Copy+paste就可以正常生成数据库。
1.3 jsp页面出现的乱码问题
这种情况往往分为两种,第一种,输入汉字无法保存;第二种,原来有的汉字乱码。解决方案为:
加上这条语名:
<%@ page contentType="text/html;charset=UTF-8"%>
然后右击该文件,将该文件的编码方式也改为utf-8
1.4 .java文件出现乱码问题
这个就直接右击该文件,将该文件的编码方式也改为utf-8
1.5总结
如果我们希望整个项目的编码方式,都不出现中文乱码的情况(比如几乎每个文件都有中文注释或者其他中文信息),我们就可以将项目的默认编码方式改为utf-8
我们还可以不改编码方式,而将所有的中文注释(包括版权信息)都改为英文。在.jsp页面中出现的中文,我们用一个国际化配置文件来代替。
比如:
.jsp文件有:
<div class="admin_addoffer_title">
                                           <bean:message key = "dep.team.dispatch"/
                                   </div>
配置文件:dep.team.dispatch =\u5DE5\u4F5C\u7EC4\u5206\u914D\u4EFB\u52A1
这个配置文件一般为ApplicationResources.properties或者也可以是Appinfo.properties,不过这个无所谓,只要读得到就可以。