这个问题已经捉弄过我好几次了,真是郁闷
这次的问题:在DOC环境下insert插入数据,然后再select提取数据,不会出现乱码,但在jsp文件下同样的操作在IE显示就出现乱码.
以前我是在页面头加<%request.getCharacterEncoding();%>就解决问题了,但现在不行,我用的是mysql4.1,my.ini文件中三个主要东西是这样设置的
default-character-set=gb2312
default-character-set=gb2312
default-storage-engine=INNODB
jsp页面加了<%@ page contentType="text/html;charset=gb2312"%>
望解..................
这次的问题:在DOC环境下insert插入数据,然后再select提取数据,不会出现乱码,但在jsp文件下同样的操作在IE显示就出现乱码.
以前我是在页面头加<%request.getCharacterEncoding();%>就解决问题了,但现在不行,我用的是mysql4.1,my.ini文件中三个主要东西是这样设置的
default-character-set=gb2312
default-character-set=gb2312
default-storage-engine=INNODB
jsp页面加了<%@ page contentType="text/html;charset=gb2312"%>
望解..................
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/haxinbbs?useUnicode=true&characterEncoding=gb2312","root","****");
应该是这样的
之前遇到过LINUX下怎么显示都是乱码的问题,最后发现是字符集和开发环境、数据库的不一致造成。老问题了,搜一下以前的帖子,就有解决方法的。
开发环境:Tomcat5.5(这个怎么设置)
数据库: mysql4.1
request.setCharacterEncoding("gb2312");再有最好下一个MYSQL QUERY BROWSER 和一个ADMINISTRTOR来进行可视化的管理.
建表和插数据都挺方便.
建议重做一张表
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/haxinbbs?useUnicode=true&characterEncoding=iso-8859-1","root","****");
错误提示说没有这个方法,存在这个方法吗,DW怎么没有提示呢,而且也会有错误
还是不行
request.setCharacterEncoding("gb2312");也不行
1。创建数据库时指定编码方式,如:
create database mydb default character set yourcharacterencoding(gbk,utf8, etc);
2。jdbc连接设置,使用utf-8,如:
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf-8",username,password);
3。页面设置,如:
request.setcharacterencoding("yourcharacterencoding of database");<%@ page contentType="text/html;charset=yourcharacterencoding of database"%><meta http-equiv="Content-Type" content="text/html; charset=yourcharacterencoding of database">
String str1 = null;
try {
str1 = new String(str.getBytes("iso8859_1"), "gb2312");
} catch (Exception e) {
e.printStackTrace();
} return str1;
}
数据插入数据库之前先调用这个方法进行编码转换,操作系统的编码是iso8859_1