什么是JDBC
百度百科是这样解释的:
JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。
个人理解:
学过java,用过mysql或者SQL Server或者Oracle的同学都应该有过这种想法,用Java去操作数据库,去执行我们的SQL语言,然后返回结果集。而Java和Mysql等数据库又不是一个东西,靠什么来建立关联呢,那就是JDBC了,其实JDBC充当了Java语言和数据库之间的一座桥梁,一座标准的桥梁,其具体实现有Mysql版本的,Oracle版本的或者SqlServer版本,从根本上说:
JDBC是一种规范,它提供的接口,一套完整的,可移植的访问底层数据库的程序。
JDBC架构
JDBC API支持两层和三层处理模型进行数据库访问,但在一般的JDBC体系结构由两层组成:
- JDBC API: 提供了应用程序对JDBC的管理连接。
- JDBC Driver API: 支持JDBC管理到驱动器连接。
- JDBC API的使用驱动程序管理器和数据库特定的驱动程序提供透明的连接到异构数据库。
- JDBC驱动程序管理器可确保正确的驱动程序来访问每个数据源。该驱动程序管理器能够支持连接到多个异构数据库的多个并发的驱动程序。
以下是JDBC结构图,它显示了驱动程序管理器方面的JDBC驱动程序和Java应用程序的位置:
JDBC核心对象
DriverManager
驱动管理程序,确定内容是否符合Java应用程序使用的通信子协议用以建立正确的数据库驱动程序的连接请求。建立数据库连接,用于管理Driver。
Driver
处理与数据库服务器的通信。
Connection
连接对象,通信上下文,数据库中的所有通信都是通过connection这一唯一的连接对象。
Statement
SQL语句提交到数据库的操作对象。
ResultSet
数据库查询结果返回的结果集。
SQLException
在与数据库进行交互的过程中发生的异常。