介绍
什么是JDBC?
JDBC代表J ava D ata b ase C onnectivity,它是Java编程语言和各种数据库之间独立于数据库的连接的标准Java API。
JDBC库包含下面提到的每个通常与数据库使用相关的任务的API。
建立与数据库的连接。
创建SQL或MySQL语句。
在数据库中执行SQL或MySQL查询。
查看和修改结果记录。
从根本上说,JDBC是一种规范,它提供了一组完整的接口,允许对底层数据库进行可移植访问。 Java可用于编写不同类型的可执行文件,例如 -
Java应用程序
Java小程序
Java Servlets
Java ServerPages(JSP)
Enterprise JavaBeans(EJB)。
所有这些不同的可执行文件都能够使用JDBC驱动程序访问数据库,并利用存储的数据。
JDBC提供与ODBC相同的功能,允许Java程序包含与数据库无关的代码。
先决条件 (Pre-Requisite)
在进一步学习之前,您需要对以下两个科目有一个很好的理解 -
核心JAVA编程
SQL或MySQL数据库
JDBC架构
JDBC API支持用于数据库访问的两层和三层处理模型,但通常,JDBC体系结构由两层组成 -
JDBC API:这提供了应用程序到JDBC Manager的连接。
JDBC Driver API:这支持JDBC Manager到驱动程序连接。
JDBC API使用驱动程序管理器和特定于数据库的驱动程序来提供与异构数据库的透明连接。
JDBC驱动程序管理器确保使用正确的驱动程序访问每个数据源。 驱动程序管理器能够支持连接到多个异构数据库的多个并发驱动程序。
以下是体系结构图,显示了驱动程序管理器相对于JDBC驱动程序和Java应用程序的位置 -
常见的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数据类型支持。
Annotations.