浅谈如何在JSP连接MySQL数据库

2009-11-25     作者:        编辑:崔晓帆   点击进入论坛
关键词:JSP  MySQL

  首先在Eclipse上编写的JSP连接MySQL数据库的程序总是报错.我都已经down了Oracal准备放弃MySQL了,不过...就象电视剧演的那样,转机总是在这个时候出现,先是看到了saulzy关于MySQL4.1.11版本的安装介绍,接着又找到了一款不错的MySQL 界面插件,最后在网友的帮助下把MySQL的JDBC驱动配好并连通了.一连5天,日子真不好过阿,不过这个过程中,我也觉得自己学到不少东西,呵呵,反正都撑过来了,就要继续往前走.现在,就这几天弄的总结一下,希望对同是正在学习Java技术的同道中人能有帮助.

  一. JSP连接MySQL软件下载

  MySQL

  下载版本:4.1.11

  http://dev.MySQL.com/downloads/MySQL/4.1.html

  JDBC驱动

  下载版本:3.1.8

  http://dev.MySQL.com/downloads/connector/j/3.1.html

  MySQL界面插件:MySQL-front

  下载版本镜像:HongKong(我下回来安装就是中文版了)

  http://www.MySQLfront.de/download.html

  二.JSP连接MySQL软件安装

  1.安装MySQL

  请参阅相关文章,推荐文章:

  http://blog.csdn.net/saulzy/archive/2005/04/23/359648.aspx

  2.JDBC驱动:MySQL-connector-Java-3.1.8

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

  3. MySQL界面插件:MySQL-front

  这是一个安装程序,按照提示安装就可以了.

  三.JSP连接MySQL环境配置

  首先,我要说明的是我现在tomcat的安装路径是: D:\Program Files\Java\Tomcat;JDK的安装路径是:D:\Program Files\Java\j2sdk。

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

  D:\Program files\Java\j2sdk\lib\tools.jar; D:\Program Files\Java\j2sdk\lib\MySQL-connector-Java-3.1.8-bin-g.jar; D:\Program Files\Java\MySQLforjdbc\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拷进去的文件夹,如下:

  D:\Program Files\Java\Tomcat\common\lib

  D:\Program Files\Java\Tomcat\shared\lib

  四.数据库的使用

  MySQL安装完毕以后,还有一些要注意的地方(推荐文章):

  http://blog.csdn.net/saulzy/archive/2005/04/23/359811.aspx

  就象在文章提到的,MySQL安装好后最重要一样就是要看数据库有没有作为系统服务启动了,所以在大家进行数据库操作前,应要看看,在操作系统的开始->运行->输入services.msc,确定你在安装时你设置的关于MySQL的那个服务已经启动,这样你在操作数据库时不会报连接不上的错误.

  上面提到了一个较方便的MySQL界面插件,但是这个界面是我在已经开始使用MySQL后才找到的,刚开始我是在dos下用命令行进行操作的.虽然那个界面也可以进行建库啊,设定权限等操作,但是,我觉得懂得在使用命令行也是一个很重要的技能,所以我先从命令行开始说,怎样简单使用MySQL.到后面会谈及MySQL-front的使用.

  现在我想在MySQL里建一个数据库shujuku,以及在数据库里建一个表biao.具体的命令如下(假设MySQL我是刚安装好的)

  1. 进入dos状态(记住命令行的要运行在MySQL的安装目录下的bin目录的)

  2. 连接MySQL

  输入:MySQL –h localhost –u root –p

  输入在安装时已设好的密码,就近入了MySQL的命令编辑界面了。

  3. 使用MySQL的基本命令(在MySQL命令行编辑每输入完命令后最后一定要有分号,不然会报错)

  显示数据库:show databases;

  使用数据库:use 数据库名;

  4.建库

  命令:create database shujuku;

  5.为数据库设置权限(用户和密码)

  命令:grant all privileges on shujuku.* to

  [url=mailto:test@localhost]test@localhost[/url] identified by “123456”;

  当你执行完这个命令以后,只要你再以用户名:test,密码:123456登录时你就只可以对shujuku这个数据库操作,这样避开使用root,对数据库的安全有很大帮助.

  6.建表

  命令:create table biao(id int(8) primary key,name varchar(10));

  剩下来的与标准sqsl命令基本上是一样的,具体操作略

  值得一提的是,你在命令行上输入"?",就会有MySQL命令的简单帮助,如下:

  呵呵,那样,我们还可以知道退出,就是"exit",呵呵!

  五. 关于MySQL-front的使用

  我找了好几个MySQL的界面工具,觉得最简洁方便还是MySQL-front,可惜的是要收费,不过还好有试用期,呵呵,可以先感受感受一下,最重要一点是MySQL-front有简体中文版的,英文不好的我用起来就舒服多了.下面简单说说使用吧.

  首先,安装就不用说了,有向导,而且很简单.安装好后第一次运行时会跳出来一个要求添加对话的框,在这里你可以添加例如上面已经设定好的shujuku,过程如下:

  当你在注册的复选框里填上你在上面MySQL设定好的用户名和密码后,在选择数据库框里就有shujuku 的数据库了,选上,按确定.进入MySQL-fron后,你就会看到下面的界面,这是你就可以进行操作了.

  要说明的是,你还可以把root用户也加进去,这要你在MySQL-fron的界面上选设置->对话->新建,再按上面进行就可以,出了root你还可以加入更多的用户,方法还是一样的,设置不同的用户,是方便对不同数据库进行管理,呵呵,root是权限最高的,可不要随便让别人使用你的root用户,保正你数据库的安全.

  六. JSP连接MySQL

  现在就是尝试用jsp连接MySQL了

  我在eclipse里建了个test_MySQL.jsp页面,代码如下:

  1. //驱动程序名
  2. String driverName="com.MySQL.jdbc.Driver";
  3. //数据库用户名
  4. String userName="cl41";
  5. //密码 www.knowsky.com
  6. String userPasswd="123456";
  7. //数据库名
  8. String dbName="db";
  9. //表名
  10. String tableName="dbtest";
  11. //联结字符串
  12. String url="jdbc:MySQL://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
  13. Class.forName("com.MySQL.jdbc.Driver").newInstance();
  14. Connection connection=DriverManager.getConnection(url);
  15. Statement statement = connection.createStatement();
  16. String sql="SELECT * FROM "+tableName;
  17. ResultSet rs = statement.executeQuery(sql);
  18. //获得数据结果集合
  19. ResultSetMetaData rmeta = rs.getMetaData();
  20. //确定数据集的列数,亦字段数
  21. int numColumns=rmeta.getColumnCount();
  22. // 输出每一个数据值
  23. out.print("id");
  24. out.print("|");
  25. out.print("num");
  26. out.print("
  27. ");
  28. while(rs.next()) {
  29. out.print(rs.getString(1)+" ");
  30. out.print("|");
  31. out.print(rs.getString(2));
  32. out.print("
  33. ");
  34. }
  35. out.print("
  36. ");
  37. out.print("数据库操作成功,恭喜你");
  38. rs.close();
  39. statement.close();
  40. connection.close();
  41. %>

然后把test­_MySQL.jsp部署到tomcat处,如何部署可参考"配置Eclpise+tomcat并实现JSP的编写与部署",在浏览器中就可以看到结果了。

寻找产品:
姓       名: 电   话:
公       司: E-mail:
描       述: