eclipse 连接mysql 中文乱码

我用eclipde连接mysql5.0,在database explorer那个视图中新建了一个connection,连接到了mysql5.0,可是在显示数据库的时候中文全是乱码,可是在mysql5.0的命令行里面查看那个数据库中文显示是正常的,怎么才能让ecplise正确显示中文呢?

适用于 Struts Servlet 和 JSP

来自 www.jnask.cn 济南爱问网论坛

解决方案:
1、确定你在安 Mysql时的字符集是 gbk
------>1、 <%@ page language="java" pageEncoding="UTF-8"%>
------>2、 如果你在JSP里有中文,好那可以正常显示,加上一个struts标签的form 也有正常的显示为中文,但是当你在表单 里提交中文的时候就会变成乱码
------>3、 变成乱码以后在与数据库的数据进行比较的时候就会出错,而且倒回表单时你会看到?????的乱码
------>4、 解决办法是 把 <%@ page language="java" pageEncoding="UTF-8"%> 删除掉 在第一行加上
<%@ page contentType="text/html;charset=gb2312"%>
和在
<head><meta http-equiv="Content-Type" content="text/html; charset=GB2312" /></head>
(注意一定在head里第一行)
------>5、当用post提交数据时,也会变成乱码,解决办法是

把项目文件下的 WEB-INF/web.xml
加上以下代码
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

然后把servlet里的WEB-INF/classes/filter目录拷贝到项目里对应的目录,这样就可以解决因post提交引起的中文问题
OK!改成STRUTS中文问题

servlet的中文问题

response.setContentType("text/html;charset=gb2312");
request.setCharacterEncoding("GB2312");

struts 中文问题
把资源文件用native2ascii.exe 编译一下,放在原来的位置就可以啦
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-08-03
楼主给你个例子,是从我的工程文件里摘的,运行的很好,这是在action里接收表单数据时用的
String shuoming = new String(addrecordForm.getShuoming().getBytes("iso-8859-1"),"utf-8");
注意最上边的一句,也要改成UTF-8,原来的是GB18030
第2个回答  2008-08-04
建议你在安装mysql的时候选择好编码,不能是默认的编码。要修改成utf-8.不然你看到的,或者从数据库中查询到的中文都会是乱码。
第3个回答  2008-08-03
我猜 要修改该项目的字符编码 改成gb2312可能就行了
第4个回答  2008-08-04
页面的编码改成 GBK