foxf001 发表于 2014-12-30 13:37:48

【我分享】jdbc连接数据库

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API.它是一种标准,由java语言编写的类与接口组成。通过jdbc提供的 标准API,可以让开发人员完全使用java来编写数据库应用程序,今天我们就简单介绍一下怎样通过jdbc来访问数据库。
1.准备工作1数据库驱动我们使用的数据库是mysql5版本.在使用jdbc去编写应用程序前,我们必须下载数据库对应的驱动程序,我们所使用的mysql驱动包是:mysql-connector-java-5.0.8-bin.jar.
2.创建库与表并添加数据http://www.itcast.cn/files/image/201406/20140603172522202.jpg
2.jdbc操作数据步骤1.加载驱动 http://www.itcast.cn/files/image/201406/20140603172845392.jpg
这两名话都可以完成驱动的加载。
DriverManager管理一组 JDBC 驱动程序的基本服务.通过它调用其registerDriver方法可以完成驱动的加载操作。但是这种方式,在底层会在加载一次驱动。源代码如下:


http://www.itcast.cn/files/image/201406/20140603172905596.jpg
所以这种方案不建议使用。缺点主要有两个方法;
1.驱动会加载两次
2.依赖于具体的API
建议使用Class.forName方式完成驱动的加载。
2.获取连接对象---Connectionhttp://www.itcast.cn/files/image/201406/20140603172928205.jpg
通过DriverManager的getConnection方法可以获取一个javax.sql.Connection对象。它代表的是与特定数据库的连接(会话)。
三个参数别是url,数据库用户名与密码.
我们通过指定的url可以知道连接是哪个数据服务器与端口,访问的是哪一个数据库,并且jdbc可以通过url知道要查找到哪一个驱动来完成获取连接对象Connection.

3获取操作sql语句的对象---Statementhttp://www.itcast.cn/files/image/201406/20140603172946377.jpg


Javax.sql.Statement它是用于执行静态 SQL 语句并返回它所生成结果的对象。
我们可以通过其提供的executeQuery与executeUpdate方法来完成select,update,delete,insert操作。

4.操作sql上面提到通过Statement提供的executeQuery与executeUpdate方法可以操作sql语句。
http://www.itcast.cn/files/image/201406/20140603173003753.jpg


[*]执行查询操作
http://www.itcast.cn/files/image/201406/20140603173023097.jpg
执行上面操作后我们得到一个javax.sql.ResultSet对象,它表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。
我们可以通过对结果进行遍历操作,获取查询的结果. java教程
http://www.itcast.cn/files/image/201406/20140603173045144.jpg
显示结果:
http://www.itcast.cn/files/image/201406/20140603173111019.jpg

[*]执行修改操作
http://www.itcast.cn/files/image/201406/20140603173136738.jpg

显示结果:
http://www.itcast.cn/files/image/201406/20140603173158895.jpg
在数据库中表的信息变化
http://www.itcast.cn/files/image/201406/20140603173215520.jpg
5.关闭资源当我们完成对sql语句的操作后,需要将资源进行释放,这与我们在io流中当使用完流后要关闭是一样的道理。

对于执行查询语句的操作我们需要执行下列操作以完成资源的释放.
http://www.itcast.cn/files/image/201406/20140603173231333.jpg
对于执行insert,update或delete操作我们需要执行下面的操作来释放资源。
http://www.itcast.cn/files/image/201406/20140603173249645.jpg
对于我们所使用的ResultSet 与Statement对象, 如果我们不关闭,将由java垃圾程序自动关闭,但是做为一种好的编程习惯,应该在不使用ResultSet或Statement后显示的关闭它们,有助了立即释放资源,并避免潜在的内存问题。
页: [1]
查看完整版本: 【我分享】jdbc连接数据库