参考了alanlhy同学的方法终于把mysql乱码的问题解决了。
之前google的方法都是在my.cnf 文件中在client 和 mysqld 下添加 default-character-set = utf8.
可是mysql5.5中这样做之后会导致mysql无法启动。
解决方法是在 mysqld 下添加 character-set-server = utf8 然后就ok了。
在mysql中使用命令“status” 可以看到
Server characterset:utf8
Db characterset:utf8
Client characterset: utf8
Conn. characterset: utf8
进入Window--Preferences--General--Workspace,Text file encoding 选项中默认的Default(GBK)选项更改为Other,并将值设为utf-8;
当然之前建的表都有重建才行。
这下用Mysql插入的数据不会出现乱码了。
接下来解决MyEclipse的问题。
首先呢在连接字符串后面加上?useUnicode=true&characterEncoding=utf8
然后你的所有JSP页面都加上这句话 <%@ page contentType="text/html;charset=utf-8"%>
当然还要设置MyEclipse的字符编码.
进入Window--Preferences--General--Workspace,Text file encoding 选项中默认的Default(GBK)选项更改为Other,并将值设为utf-8。
最后可不要忘记了还有servlet哦,在每个servlet里加上
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
google到好多前辈的方法 都是自己写了个过滤器。改天我也尝试一下 =v=