JDBC - 简介

  • 什么是JDBC?

    JDBC代表 Java Database Connectivity,这是一个标准的 Java API,用于在 Java 编程语言和广泛的数据库之间建立独立于数据库的连接。
    JDBC 库包括用于下面提到的每个任务的 API,这些任务通常与数据库使用相关联。
    • 建立与数据库的连接。
    • 创建 SQL 或 MySQL 语句。
    • 在数据库中执行 SQL 或 MySQL 查询。
    • 查看和修改结果记录。
    从根本上说,JDBC 是一种规范,它提供了一套完整的接口,允许对底层数据库进行可移植的访问。Java 可用于编写不同类型的可执行文件,例如 -
    • Java 应用程序
    • Java 小程序
    • Java Servlet
    • Java ServerPages (JSP)
    • 企业 JavaBean (EJB)。
    所有这些不同的可执行文件都能够使用 JDBC 驱动程序访问数据库,并利用存储的数据。
    JDBC 提供与 ODBC 相同的功能,允许 Java 程序包含独立于数据库的代码。
  • 先决条件

    在继续之前,您需要对以下两个主题有一个很好的了解 -
  • JDBC 架构

    JDBC API 支持用于数据库访问的两层和三层处理模型,但一般而言,JDBC 架构由两层组成 -
    • JDBC API − 这提供了应用程序到 JDBC 管理器的连接。
    • JDBC Driver API − 支持JDBC Manager-to-Driver Connection。
    JDBC API 使用驱动程序管理器和特定于数据库的驱动程序来提供与异构数据库的透明连接。
    JDBC 驱动程序管理器确保使用正确的驱动程序访问每个数据源。驱动程序管理器能够支持连接到多个异构数据库的多个并发驱动程序。
    以下是架构图,显示了驱动程序管理器相对于 JDBC 驱动程序和 Java 应用程序的位置 -
    JDBC 架构
  • 常见的 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 数据类型支持。
    • 注释。