JDBC 之一

Posted on 2012-03-03 19:22 cuicn 阅读(42) 评论(0)  编辑  收藏
JDBC是java数据库连接性API,它允许用户从Java应用程序中访问任何表格化数据源。JDBC除了提供到更宽范围的SQL数据库的连接外,也允许用户访问其他的表格数据源,如电子表格。 JDBC定义了一个底层的API,用来支持独立于任何特定SQL实现的基本SQL功能。这意味着重要的是执行原SQL语句,然后检索他们的结果。 JDBC 2.0 API包括两个包:java.sql和javax.sql。他们合在一起,包含了用Java开发数据库应用程序所需的类。作为Java2平台,JDBC在任何运行Java的平台上都是可用的。 JDBC3.0规范,引入了几个特性,包括支持各种数据类型,附加的元数据能力,并增加了大量的接口。 JDBC主要特点是与任何关系型数据库协同工作的方式完全相同。没有必要写一个程序访问oracle,写另一个程序访问mysql等等。JDBC在许多不同数据库连接模块的顶端提供了统一的接口。使用JDBC写的程序可以用来创建与任何关系型数据库的SQL接口。 JDBC的三种主要功能: 1、建立与数据库或其他表列数据源的连接 2、向数据源发送SQL命令 3、处理结果 访问数据源的主要步骤: 1、 装载一个JDBC驱动程序 2、 获得与数据库的连接 3、 创建一条语句 4、 执行SQL查询 5、 从ResultSet中检索数据 ResultSet提供了在结果中循环所必须的方法,和使用适合于自己类型的方法获得各自数据库字段。 JDBC API在SQL数据类型和Java/JDBC数据类型之间定义了标准的映射。 JDBC API可以直接从应用程序中使用,或者作为多层服务器应用程序一部分使用。 SQL的一致性: 尽管SQL是访问关系型数据库的标准语言,但是不同的数据库系统支持不同的SQL语法这些区别从次要细节--SQL语句是否需要结束符(;),到大的变化--例如缺乏对存储过程或加入到数据库系统中某些类型的支持。 另一个重要区别是许多数据库系统提供大量的没有包含高级功能的SQL标准。这些高级特性在不同数据库系统中有不同的实现方式。JDBC API设计的一个非常重要的需求是它必须支持SQL,因为它不只限于标准的定义的那样。 JDBC API处理该问题的一种方式是允许将SQL String传送到底层DBMS驱动程序。结果是许多数据库管理系统对一些命令返回错误响应。 JDBC API支持将任意SQL String通过回避机制传送到数据库管理系统。例如,对于数据和存储过程调用有许多回避机制。 另一种附加的支持机制由DatabaseMetaData接口提供,该接口提供了DBMS的描述性信息。这在跨平台应用中尤为有用,它有助于使应用程序适合于不同的数据库管理系统的需求和能力。 JDBC兼容性: SUN创建了JDBC兼容性定义,用来表示可以依赖于提供商的JDBC实现来遵守JDBC功能的标准层。在提供商使用该定义之前,提供商的驱动程序必须通过Sun的JDBC一致性测试 java.sql.Driver方法jdbcCompliant()报告驱动程序是否满足JDBC兼容性。当调用该方法时,如果它通过了JDBC兼容性测试,驱动程序可能只报告true,反正false。 Sun定义了一下三种JDBC兼容等级: JDBC1.0API兼容性,要求实现一下接口: >java.sql.Driver >java.sql.DataBaseMetaData >java.sqlResultSetMetaData >java.sql.Connection >java.sql.Statement >java.sql.CallableStatement >java.sql.PreparedStatement >java.sql.ResultSet JDBC2.0 API兼容性要求: >JDBC1.0 API兼容性要求 >JDBC2.0中定义的数据库元数据接口扩展的完整实现 >附加JDBC2.0 ResultSet方法实现 JDBC 3.0 API 兼容性要求: >JDBC 2.0 API兼容性 >java.sql.Parameter元数据的实现 >java.sql.Savepoint的实现 >JDBC3.0中定义的数据库元数据接口扩展的完整实现 驱动程序开发人员可以通过使用JDBC API可用的测试组来确定他们的驱动程序是否满足JDBC兼容性标准。

只有注册用户登录后才能发表评论。


网站导航: