站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解

MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解

摘要: MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解
<tr> <td>

解决这类问题的方法很多,今天在此简单的终结一下,把常碰到的问题解决方法记下来!

  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, JDBC的设置问题:(这里主要讲的是mysql-connector-java-3.1.8这个JDBC驱动程序而言)

这只是一个压缩包,并不需要安装,只要将其解压,使用的是文件夹mysql-connector-java-3.1.8里的文件:mysql-connector-java-3.1.8-bin.jar.

需要配置环境变量的是JDBC驱动.在配置前先要把刚才说到的mysql-connector-java-3.1.8-bin.jar放到本地硬盘某处(我放的地方:E:\JAVA\MySQLJDBC),然后根据你放的地方,配置classpath,我的配置是这样的:

  .;E:\Java\j2se5.0\lib\tools.jar; E:\Java\j2se5.0\lib\mysql-connector-java-3.1.8-bin-g.jar; E:\JAVA\MySQLJDBC\mysql-connector-java-3.1.8-bin.jar

  配置这个的目的是让你的java应用程序找到连接mysql的驱动.

  配置完环境变量后还有很重要一步就是为JSP连接数据库配置驱动,这个其实很简单,就是把mysql-connector-java-3.1.8-bin.jar拷到某些文件夹里就行了,我在网上看了很多资料问了很多人,各种说法都有,我综合了一下,为了保险,我都全做了,呵呵,反正就是拷一个400K的文件而已,现列出要把mysql-connector-java-3.1.8-bin.jar拷进去的文件夹,如下:

  E:\Java\Tomcat5.0\common\lib

  E:\Java\Tomcat5.0\shared\lib

一般情况下只要考到Tomcat5.0上面的两个问题夹里面就可以解决问题了,如果需要,也可以将mysql-connector-java-3.1.8-bin.jar这个驱动文件拷贝到你的WEB站点的 …\WEB-INF\lib 目录下面。

  3, Eclipse中数据库插件中操作数据库时的中文编码问题:

当在Eclipse中装上来你所喜欢的数据库插件的时候,都会出现在你查询某一个数据库之后出现记录中的汉字乱码。解决方法很简单,

只要在你建立数据库连接的时候把URL设置成下面这个样子就可以了:

URL= jdbc:mysql://localhost:3306/?useUnicode=true&characterEncoding=GBK

  4, 在JSP网页编辑中个人经验:在经过很多的次调试之后,发现在装了myeclipse之后,有这么条小巧:

在用myeclipse编写HTML文件时charset=GBK设置成这个样子,那么在浏览器中浏览时就不会出现乱码;

而在用myeclipse编辑JSP文件时,<%@ page contentType="text/html;charset=GB2312" %>设置成这样子,且这条语句必须是整个JSP文件的第一条语句,就可以避免JSP文件在浏览器中显示时出现乱码;

对于如果在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");这样设置后数据库中的数据才不会乱码.

以上经验都是在myeclipse3.8.3+Tomcat5.0.28中测试过,没有错误!在此仅供大家借鉴,具体情况还得具体分析!

</td> </tr> </table>
↑返回目录
前一篇: 用缓冲技术提高JSP程序的性能和稳定性
后一篇: JBuilder2005 Servlet开发之开发必备