当前位置: 首页 > 图文教程 > 网络编程 > JSP > MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解决方法总结

JSP
Java 创建cookie和删除cookie
jsp 从web.xml读取连接数据库的参数
jsp 不支持EL表达式,解决办法
jsp 获取客户端的浏览器和操作系统信息
struts2 session 解读
struts2 spring整合fieldError问题
jsp 生成验证码代码
搭建java WEB开发环境和应用
JSP 自定义标签
Java 区分文本中的中英文字符函数
通用JSP页面 jsp入门级文章
jsp struts1 标签实例详解
一个jdbc 测试程序代码
SSH整合中 hibernate托管给Spring得到SessionFactory
jsp SmartUpload 实现上传功能代码
jsp Unsupported encoding: gb2312 错误原因
java Struts2 在拦截器里的跳转问题
jsp 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)
Java 项目生成静态页面的代码
jdk与jre的区别 很形象,很清晰,通俗易懂

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-03   浏览: 253 ::
收藏到网摘: n/a

文章首发于我的blog:
                   http://blog.csdn.net/dazern  
  解决这类问题的方法很多,今天在此简单的终结一下,把常碰到的问题解决方法记下来
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中测试过,没有错误!在此仅供大家借鉴,具体情况还得具体分析!