一、什么是JDBC?什么是数据库驱动(程序)?
JDBC全称Java Database Connectivity,即Java数据库连接,它定义了Java语言访问各种数据库的统一标准(API)。这么说可能还是有些抽象。设想一种情况,假如没有JDBC,我们如何访问各种数据库呢?由于各个企业根据自身条件和需求,选择的数据库可能是多种多样的(MySQL、Oracle,SQL Server等),并且不幸的是,想要操作这些不同的数据库,我们势必要编写不同的数据库访问代码。显然这会带来很多的不便,例如更换底层数据库实现的操作会渗透到数据访问层的代码。
在这个背景下,JDBC就推出了。JDBC是Sun公司制定的一套统一的数据库访问API。也就是不论你数据库如何选择、更换,我都可以用同一套API来访问,这就屏蔽了底层的数据库实现。然而,注意JDBC作为一个标准,它提供的仅仅是接口。它只会告诉你应该做什么,但是不会告诉你怎么做。
那么数据访问层的差异化体现在哪里呢?那就是数据库驱动程序了。数据库驱动程序和数据库厂商提供的而不是Sun公司提供的。举个栗子,MySQL数据库,为了推广其产品,兼容到各种高级语言。那么我会根据Sun公司提供的JDBC标准,编写具体的实现,这个具体的实现就是数据库驱动程序了。当然为了兼容其他的语言,MySQL必须发布多款针对不同语言的数据库驱动程序。
其实只要记得JDBC是