症状:??中文乱码
尝试过的方法:
一、试过修改my.ini default-character-set=latin1 ===>> gbk失败
二、增加servlet过滤器 jsp页面设置pageEncoding="GB2312" 无效
三、web开发时来自表单的POST数据,不转码直接入DB Url:
String url = "jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=GBK"
页面显示时,用new String(dd.getBytes("iso-88-59-1"),"GB2312")转一下可以正确显示从DB中读出的中文数据
但是纯java读取控制台显示就失败,比如java在xml和DB间传递中文数据
四、努力的思考:java中都是Unicode编码,Tomcat是iso-8859-1编码,Mysql默认是latin1?不想还可以,越想越乱
五、google搜索结果:不同的情况不同的答案,以后面试我也问Mysql中文问题,挺有意思的哈
环境:Mysql5。0 Tomcat5.5 Jdk1.5 Windows 2003Server,Jbuilder2006
数据库:mysql5字符集编码:
query result(8 records)
Variable_name | Value |
character_set_client |
latin1 |
character_set_connection |
latin1 |
character_set_database |
latin1 |
character_set_filesystem |
binary |
character_set_results |
latin1 |
character_set_server |
latin1 |
character_set_system |
utf8 |
character_sets_dir |
C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ |
//数据库url
String url = "jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=GBK"
String mySqlDriver = "org.gjt.mm.mysql.Driver";
DAO部分public ArrayList GetAllInfo() {
ArrayList aMovies = new ArrayList();
Connection conn = null;
Statement stmt = null;
try {
conn = new DbConnection().GetConnection();
stmt = conn.createStatement();
String sql = "select * from movie";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
movie m = new movie();
m.setId(rs.getInt("id"));
m.setMoviename(rs.getString("moviename").trim());
m.setStars(rs.getString("stars").trim());
aMovies.add(m);
}
} catch (Exception ex) {
System.err.println(ex.getMessage());
ex.printStackTrace();
} finally {
try {
stmt.close();
conn.close();
} catch (SQLException ex1) {
ex1.printStackTrace();
}
}
return aMovies;
}
数据显示页页面(向
数据库中插入数据时,不转码,取出jsp显示时,用new
String(dd.getBytes("iso-88-59-1"),"GB2312")没有问题,但是换成用struts logic
和bean标签输出 的时候,用不了上述函数,所以从DB中出来的中文乱码,servlet过滤器也加上了,失败)
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ page contentType="text/html; charset=GB2312" pageEncoding="GB2312" %>
<html>
<head>
<title>
sucess
</title>
</head>
<body bgcolor="#ffffff">
<table border="1">
<tr>
<td>moviename</td>
<td>stars</td>
</tr>
<logic:iterate id="mv" scope="request" name="movies" >
<tr>
<td><bean:write name="mv" property="moviename" filter="true"/></td>
<td><bean:write name="mv" property="stars"/></td>
</tr>
</logic:iterate>
</table>
</body>
</html>
MySql的中文真是一个地方一个样,随便搜索Mysql中文问题,都一大把,
开发做了好几年,
如今中文犯了难,
看来平时总结少,
咔嚓回到解放前
大家都来说几句哈,谢谢
分享到:
相关推荐
经典的struts中文问题,国际化问题终极解决方案
struts中文乱码问题解决详细步骤(两种方法)
Struts中文文档
eclipse struts 中文乱码问题图解 页面乱码 参数乱码 国际化乱码
struts 中文乱码问题解决
struts中文手册struts中文手册struts中文手册struts中文手册
struts处理中文乱码问题总结struts处理中文乱码问题总结struts处理中文乱码问题总结struts处理中文乱码问题总结
struts下的汉字乱码问题 经过测试
STRUTS中文文档,内容比较丰富 struts安装 Struts原理、开发及项目实施 Struts中的应用 Struts中的翻页实例 strtus整体架构及核心标签库的介 struts框架详细介绍 Struts的体系结构
01 为Struts 2.0做好准备 02 常用的Struts 2.0的标志(Tag) 03 Struts 2.0的Action讲解 04 在Struts 2.0中国际化(i18n)您的应用程序 05 转换器(Converter)——Struts 2.0中的魔术师 06 在Struts 2.0中实现表单...
书名:Struts中文手册[文字版][中文](电子书) 格式:PDF 1. Struts 框架1 1.1. Struts 压缩包内容.1 1.2. Struts 体系结构1 1.2.1. 模型.2 1.2.2. 视窗.2 1.2.3. 控制器.2 1.3. Struts 框架中的组件.3 1.3.1. ...
Struts2.0视频教程,struts2.0中文教程,Struts2.0视频教程,struts2.0中文教程,
struts的中文乱码问题。。我想这对大多数朋友会有用的
关于StrutsPrepareAndExecuteFilter最新的过滤器,在Struts.xml定义常量<constant name="struts.i18n.encoding" value="UTF-8"/>无法解决post方式提交中文乱码问题。 关于Struts2各个版本、各种过滤器,用get方式...
深圳电信培训中心.徐海蛟老师上ssha课时候用的中文版struts api chm中文文档。 支持高级搜索,即时搜索。吐血奉送各位。
Struts中文简介.rar 介绍struts的中文资料 ^_^
解决myeclipse Struts中文乱码问题视频
struts2中文教程
在进行web应用程序开发的过程中,中文问题经常困扰着很多程序员。因此,在接下来的两个课程的学习中,我将根据实践经验来谈一下web应用中的中文问题的解决方法。让大家不再为此而头痛。