解决这类问题的方法很多,今天在此简单的终结一下,把常碰到的问题解决方法记下来
1, MySQL5.0中文问题解决方案如下:
1、在dos环境下,用mysql --default-character-set=gbk -u root -p 这句话进入mysql~~
2、建数据库、表,如下:
create database admin;
use admin;
CREATE TABLE admin (
admin_name char(20) NOT NULL,
admin_password char(20) NOT NULL
) TYPE=MyISAM,
default character set gbk;
2, Eclipse中数据库插件中操作数据库时的中文编码问题:
当在Eclipse中装上来你所喜欢的数据库插件的时候,都会出现在你查询某一个数据库之后出现记录中的汉字乱码。解决方法很简单,
只要在你建立数据库连接的时候把URL设置成下面这个样子就可以了:
URL= jdbc:mysql://localhost:3306/?useUnicode=true&characterEncoding=GBK
3 , 在JSP网页编辑中个人经验:在经过很多的次调试之后,发现在装了myeclipse之后,有这么条小巧:
(1)在用myeclipse编写HTML文件时charset=GBK设置成这个样子,那么在浏览器中浏览时就不会出现乱码;
(2)而在用myeclipse编辑JSP文件时,
<%@ page contentType="text/html;charset=GB2312" pageEncoding="gbk"%>设置成这样子,且这条语句必须是整个JSP文件的第一条语句,就可以避免JSP文件在浏览器中显示时出现乱码;
其中设置charset=GB2312是为了规定输出页面的编码方式,保证在浏览器显示时不出现乱码.而pageEncoding="gbk"该句可以设置编译阶段的编码方式,这个可以解决全都设置正确的时候,而在运行后就不正确的问题.
(3)对于如果在JSP网页中要从HTML页面中接收数据,那么在JSP中的接收语句的汉字编码应与数据来源的HTML的汉字编码相同;
例如②中的HTML的汉字编码为charset=GBK,那么在JSP中的接收语句就应该这样设置:request.setCharacterEncoding("GBK");
如果还要将接受的数据插入到数据库中(以插入MySQL5.0数据库为例),那么在插入数据库时的汉字编码也应与HTML文件中的汉字编码相同,我的设置如下:
con= DriverManager.getConnection("jdbc:mysql://localhost:3306/sample_db?user=dazern&password=5201314
&useUnicode=true&characterEncoding=GBK");
这样设置后数据库中的数据才不会乱码.
这时学习时得到的解决方法,欢迎大家来补充!