JDBC基础知识

一、概念

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

二、和ODBC比较(ODBC基础知识)

目前,Microsoft 的 ODBC API 可能是使用最广的、用于访问关系数据库的编程接口。它能在几乎所有平台上连接几乎所有的数据库。

为什么 Java 不使用 ODBC?因为:

1.ODBC 不适合直接在 Java 中使用,因为它使用 C 语言接口。从Java 调用本地 C 代码在安全性、实现、坚固性和程序的自动移植性方面都有许多缺点。

2.ODBC 很难学。它把简单和高级功能混在一起,而且即使对于简单的查询,其选项也极为复杂。相反,JDBC 尽量保证简单功能的简便性,而同时在必要时允许使用高级功能。

三、JDBC的分类:  

(1)JDBC-ODBC桥  这种类型的驱动把所有JDBC的调用传递给ODBC,再让后者调用数据库本地驱动代码(也就是数据库厂商提供的数据库操作二进制代码库,例如Oracle中的oci.dll)。注意,必须将ODBC二进制代码(许多情况下还包括数据库客户机代码)加载到使用该驱动程序的每个客户机上。因此,这种类型的驱动程序最适合于企业网(这种网络上客户机的安装不是主要问题),或者是用Java编写的三层结构的应用程序服务器代码。  

(2)本地API驱动  这种类型的驱动程序把客户机API上的JDBC调用转换为Oracle、Sybase、Informix、DB2或其它DBMS的调用。注意,象桥驱动程序一样,这种类型的驱动程序要求将某些二进制代码加载到每台客户机上。  

(3)JDBC网络协议驱动  这种驱动程序将JDBC转换为与DBMS无关的网络协议,之后这种协议又被某个服务器转换为一种DBMS协议。这种网络服务器中间件能够将它的纯Java客户机连接到多种不同的数据库上。所用的具体协议取决于提供者。通常,这是最为灵活的JDBC驱动程序。  

(4)本地协议驱动  这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。这将允许从客户机机器上直接调用DBMS服务器,是Intranet访问的一个很实用的解决方法。由于许多这样的协议都是专用的,因此数据库提供者自己将是主要来源。

四、JDBC技术的系统技术结构图 


JDBC基础知识_第1张图片
结构图说明: 

1.在JDBC中,程序员面向JDBC API接口编程,如Connection接口、Statement接口、ResultSet接口等,而这些接口的实现则交给数据库厂商去完成。

 

2.程序员在进行JAVA数据库开发时,只要加载了数据库驱动程序就可以使用接口中的方法,无需关心接口实现。

3.数据库驱动程序实际上是提供了这些JDBC API接口的实现类,程序员加载数据库驱动程序的过程实际上是在为这些接口指定实现类。而管理这些驱动程序的工作是由一个JAVA类完成的,这就是DriverManage类。

4.DriverManage类,它所起的作用就是将JDBC API中声明的接口对应到驱动程序提供的实现类上。

 

相关文章:JAVA持久化框架选择:EJB?JPA?Hibernate?TopLink?

 



 

你可能感兴趣的:(jdbc)