Java Mysql 简明教程

Java & MySQL - Overview

JDBC 全称 *J*ava *D*ata*b*ase *C*onnectivity,它是用于 Java 编程语言和广泛数据库之间的与数据库无关的连接的标准 Java API。

JDBC 库包括用于以下任务的 API,这些任务通常与数据库使用有关。

  1. 连接到数据库。

  2. 创建 SQL 或 MySQL 语句。

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

  4. 查看修改生成记录。

从根本上说,JDBC 是一套规范,它提供了全面的接口来实现对底层数据库的可移植访问。Java 可用于编写不同类型的可执行文件,比如:

  1. Java Applications

  2. Java Applets

  3. Java Servlets

  4. Java ServerPages (JSPs)

  5. Enterprise JavaBeans (EJBs).

所有这些不同的可执行文件都能够通过 JDBC 驱动程序来访问数据库并充分利用存储的数据。

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

Pre-Requisite

在继续下一步之前,你需要对以下两个主题有深入的了解:

JDBC Architecture

JDBC API 支持两层和三层数据库访问处理模型,但一般来说 JDBC 架构由两层组成:

  1. JDBC API — 提供应用程序与 JDBC 管理器之间的连接。

  2. JDBC Driver API — 支持 JDBC 管理器与驱动程序之间的连接。

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

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

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

jdbc architecture

Common JDBC Components

JDBC API 提供了以下接口和类:

  1. DriverManager — 此类管理数据库驱动程序列表。根据通信子协议,匹配 Java 应用程序的连接请求和合适的数据库驱动程序。第一个识别特定 JDBC 子协议的驱动程序将用来建立数据库连接。

  2. Driver — 此接口处理与数据库服务器的通信。你很少会直接与驱动程序对象交互。相反,你使用 DriverManager 对象,它会管理此类型的对象。此接口还抽象了与驱动程序对象相关的工作详情。

  3. Connection — 此接口提供了所有用于连接数据库的方法。连接对象表示通信上下文,也就是说所有与数据库的通信都仅通过连接对象进行。

  4. Statement — 你可以使用从此接口创建的对象向数据库提交 SQL 语句。一些派生接口接受参数并执行存储过程。

  5. ResultSet — 使用 Statement 对象执行 SQL 查询后,这些对象会保存从数据库中检索的数据。它充当迭代器,允许你在数据中移动。

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

The JDBC 4.0 Packages

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

这些软件包中的新功能包括以下领域的变更:

  1. Automatic database driver loading.

  2. Exception handling improvements.

  3. Enhanced BLOB/CLOB functionality.

  4. 连接和语句界面增强功能。

  5. National character set support.

  6. SQL ROWID access.

  7. SQL 2003 XML 数据类型支持。

  8. Annotations.