JDBC - 简介



什么是 JDBC?

JDBC 代表 Java Database Connectivity,它是一个标准的 Java API,用于在 Java 编程语言和各种数据库之间实现数据库无关的连接。

JDBC 库包含 API,用于执行下面提到的与数据库使用通常相关的各项任务。

  • 连接到数据库。

  • 创建 SQL 或 MySQL 语句。

  • 在数据库中执行 SQL 或 MySQL 查询。

  • 查看和修改结果记录。

从根本上说,JDBC 是一个规范,它提供了一套完整的接口,允许对底层数据库进行可移植的访问。Java 可用于编写不同类型的可执行文件,例如:

  • Java 应用程序

  • Java Applet

  • Java Servlet

  • Java ServerPages (JSP)

  • 企业 JavaBean (EJB)。

所有这些不同的可执行文件都可以使用 JDBC 驱动程序访问数据库并利用存储的数据。

JDBC 提供与 ODBC 相同的功能,允许 Java 程序包含数据库无关的代码。

先决条件

在继续学习之前,您需要对以下两个主题有很好的理解:

JDBC 架构

JDBC API 支持用于数据库访问的两层和三层处理模型,但一般来说,JDBC 架构包含两层:

  • JDBC API - 提供应用程序到 JDBC 管理器的连接。

  • JDBC 驱动程序 API - 支持 JDBC 管理器到驱动程序的连接。

JDBC API 使用驱动程序管理器和特定于数据库的驱动程序来提供对异构数据库的透明连接。

JDBC 驱动程序管理器确保使用正确的驱动程序来访问每个数据源。驱动程序管理器能够支持连接到多个异构数据库的多个并发驱动程序。

以下是架构图,它显示了驱动程序管理器相对于 JDBC 驱动程序和 Java 应用程序的位置:

JDBC Architecture

常见的 JDBC 组件

JDBC API 提供以下接口和类:

  • DriverManager - 此类管理数据库驱动程序列表。使用通信子协议将来自 Java 应用程序的连接请求与正确的数据库驱动程序匹配。第一个识别 JDBC 下特定子协议的驱动程序将用于建立数据库连接。

  • Driver - 此接口处理与数据库服务器的通信。您很少会直接与 Driver 对象交互。相反,您使用 DriverManager 对象,它管理此类型的对象。它还抽象了与 Driver 对象一起工作相关的细节。

  • Connection - 此接口包含所有用于联系数据库的方法。连接对象表示通信上下文,即所有与数据库的通信都只能通过连接对象进行。

  • Statement - 使用从此接口创建的对象将 SQL 语句提交到数据库。一些派生接口除了执行存储过程之外,还可以接受参数。

  • ResultSet - 在使用 Statement 对象执行 SQL 查询后,这些对象保存从数据库检索的数据。它充当迭代器,允许您遍历其数据。

  • SQLException - 此类处理数据库应用程序中发生的任何错误。

JDBC 4.0 包

java.sql 和 javax.sql 是 JDBC 4.0 的主要包。这是撰写本教程时的最新 JDBC 版本。它提供与数据源交互的主要类。

这些包中的新功能包括以下方面的更改:

  • 自动加载数据库驱动程序。

  • 改进的异常处理。

  • 增强的 BLOB/CLOB 功能。

  • 连接和语句接口增强。

  • 国家字符集支持。

  • SQL ROWID 访问。

  • SQL 2003 XML 数据类型支持。

  • 注释。

广告