返回介绍

第 8 章 数据库连接 JDBC

发布于 2025-04-22 22:09:14 字数 1975 浏览 0 评论 0 收藏

JDBC(Java Data Base Connectivity,Java 数据库连接)是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库提供统一访问,它由一组用 Java 语言编写的类和接口组成。JDBC 为数据库开发人员提供了一个标准的 API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,并且可跨平台运行,并且不受数据库供应商的限制。

JDBC 连接数据库的流程及其原理如下。

(1)在开发环境中加载指定数据库的驱动程序。接下来的实验中,使用的数据库是 MySQL,所以需要去下载 MySQL 支持 JDBC 的驱动程序(最新的版本是 mysql-connector-java-5.1.18-bin.jar),将下载得到的驱动程序加载进开发环境中(开发环境是 MyEclipse,具体示例时会讲解如何加载)。

(2)在 Java 程序中加载驱动程序。在 Java 程序中,可以通过“Class.forName("指定数据库的驱动程序")”的方式来加载添加到开发环境中的驱动程序,例如加载 MySQL 的数据驱动程序的代码为 Class.forName("com.mysql.jdbc.Driver")。

( 3 )创建数据连接对象。通过 DriverManager 类创建数据库连接对象 Connection。DriverManager 类作用于 Java 程序和 JDBC 驱动程序之间,用于检查所加载的驱动程序是否可以建立连接,然后通过它的 getConnection 方法根据数据库的 URL、用户名和密码,创建一个 JDBC Connection 对象,例如:Connection connection = DriverManager.geiConnection("连接数据库的 URL", "用户名", "密码”)。其中,URL=协议名+IP 地址(域名)+端口+数据库名称;用户名和密码是指登录数据库时所使用的用户名和密码。具体示例创建 MySQL 的数据库连接代码如下:

Connection connectMySQL = DriverManager.geiConnection(“jdbc:mysql://localhost:3306/

myuser","root" ,"root" );

(4)创建 Statement 对象。Statement 类的主要是用于执行静态 SQL 语句并返回它所生成结果的对象。通过 Connection 对象的 createStatement() 方法可以创建一个 Statement 对象。例如:Statement statament = connection.createStatement()。具体示例创建 Statement 对象代码如下:

Statement statamentMySQL =connectMySQL.createStatement();

(5)调用 Statement 对象的相关方法执行相对应的 SQL 语句。通过 execuUpdate() 方法来对数据更新,包括插入和删除等操作,例如向 staff 表中插入一条数据的代码:

statement.excuteUpdate( "INSERT INTO staff(name, age, sex,address, depart,

worklen,wage)" + " VALUES ('Tom1', 321, 'M', 'china','Personnel','3','3000' ) ") ;

通过调用 Statement 对象的 executeQuery() 方法进行数据的查询,而查询结果会得到 ResulSet 对象,ResulSet 表示执行查询数据库后返回的数据的集合,ResulSet 对象具有可以指向当前数据行的指针。通过该对象的 next() 方法,使得指针指向下一行,然后将数据以列号或者字段名取出。如果当 next() 方法返回 null,则表示下一行中没有数据存在。使用示例代码如下:

ResultSet resultSel = statement.executeQuery( "select * from staff" );

(6)关闭数据库连接。使用完数据库或者不需要访问数据库时,通过 Connection 的 close() 方法及时关闭数据连接。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。