1.在安装Mysql时其实可能选择使用GBK来处理汉字,由于以前没使用,所以就按默认的英语处理。不过,也可以C:\Program Files\MySQL\MySQL Server 4.1安装路径下的my文件[mysql] 下default-character-set=gbk改成gbk 然后重起一下.
2.用命建数据库和表时在最后都加上default charset=gbk;
如:create database xx default charset=gbk;
CREATE TABLE tt (
...
) default charset=gbk;
3.在连接语句中加入:
mysqlUrl = "jdbc:mysql://localhost:3306/ebook?useUnicode=true&characterEncoding=gb2312";
4.应注意在jsp页面中中入:<%@ page language="java" contentType="text/html; charset=GB2312" pageEncoding="GB2312"%>
5.在jsp中获得字段时,在往后如数据库表中插入记录时应注意将sql处理。如下:
String sql = "xx";
System.out.println(sql); //显示没有处理sql
sql = new String(sql.getBytes("ISO8859-1"), "GB2312"); //用于将汉字处理,不然的话你会发现数据库表中存的不是汉字
System.out.println(sql);
int i = stmt.executeUpdate(sql); // 执行sql语句:
6.网上有人说JDBC驱动也有可能出现汉字乱码,最好使用较高版本的Mysql驱动