什么是JDBC?

一、JDBC的定义

  JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序--百度百科。

  有了JDBC,对于各种关系型数据库的操作就会变得非常简单。换言之,有了JDBC API,就可以在访问Sybase数据库、Oracle数据库、Informix数据库的时候编写一个应用程序就够了,而没有必要针对不同的数据库开发不同的程序,对于操作不同的关系数据库只要更改对应的JDBC驱动程序就可以了。JDBC可向相应关系数据库发送SQL调用 ,从而操作数据库。JDBC 希望达到的目的,是希望让Java 程序员在编写数据库操作程序的时候,可以有个统一的接口,无须依赖于特定的数据库API,希望达到“写一个Java 程序,操作所有的数据库”的目的。如下图所示,JDBC采用了分层的思想,即在更换数据库的时候我们只需要考虑与数据库进行通信的驱动程序即可。

  JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。

二、JDBC的用途

  简单地说,JDBC 可做三件事:与数据库建立连接、发送操作数据库的语句并处理结果。下列代码段给出了以上三步的基本示例:

//与数据库建立连接
Connection con = DriverManager.getConnection("jdbc:odbc:wombat","login","password");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");  //数据库操作语句
while (rs.next()) {          //对数据库处理的操作
  int x = rs.getInt("a");
  String s = rs.getString("b");
  float f = rs.getFloat("c");
}
 三、API
  JDBC 是个"低级"接口,也就是说,它用于直接调用 SQL 命令。在这方面它的功能极佳,并比其它的数据库连接 API 易于使用,但它同时也被设计为一种基础接口,在它之上可以建立高级接口和工具。高级接口是"对用户友好的"接口,它使用的是一种更易理解和更为方便的 API,这种API在幕后被转换为诸如 JDBC 这样的低级接口。
在关系数据库的"对象/关系"映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。于是,程序员可直接对 Java 对象进行操作;存取数据所需的 SQL 调用将在"掩盖下"自动生成。此外还可提供更复杂的映射,例如将多个表中的行结合进一个 Java 类中。
  随着人们对 JDBC 的兴趣日益增涨,越来越多的开发人员一直在使用基于 JDBC 的工具,以使程序的编写更加容易。程序员也一直在编写力图使最终用户对数据库的访问变得更为简单的应用程序。例如应用程序可提供一个选择数据库任务的菜单。任务被选定后,应用程序将给出提示及空白供填写执行选定任务所需的信息。所需信息输入应用程序将自动调用所需的 SQL 命令。在这样一种程序的协助下,即使用户根本不懂 SQL 的语法,也可以执行数据库任务。
 
 

 

posted on 2013-05-30 19:47  Frank love java  阅读(237)  评论(0编辑  收藏  举报

导航