阅览JDBC的联机帮助文档时,我们往往会产生畏难情绪。特别是DatabaseMetaData接口——与Java中看到的大多数接口相反,它的体积显得非常庞大——存在着数量众多的方法,比如dataDefinitionCausesTransactionCommit(),getMaxColumnNameLength(),getMaxStatementLength(),storesMixedCaseQuotedIdentifiers(),supportsANSI92IntermediateSQL(),supportsLimitedOuterJoins()等等。它们有这儿有什么意义吗?
正如早先指出的那样,数据库起初一直处于一种混乱状态。这主要是由于各种数据库应用提出的要求造成的,所以数据库工具显得非常“强大”——换言之,“庞大”。只是近几年才涌现出了SQL的通用语言(常用的还有其他许多数据库语言)。但即便象SQL这样的“标准”,也存在无数的变种,所以JDBC必须提供一个巨大的DatabaseMetaData接口,使我们的代码能真正利用当前要连接的一种“标准”SQL数据库的能力。简言之,我们可编写出简单的、能移植的SQL。但如果想优化代码的执行速度,那么为了适应不同数据库类型的特点,我们的编写代码的麻烦就大了。
当然,这并不是Java的缺陷。数据库产品之间的差异是我们和JDBC都要面对的一个现实。但是,如果能编写通用的查询,而不必太关心性能,那么事情就要简单得多。即使必须对性能作一番调整,只要知道最终面向的平台,也不必针对每一种情况都编写不同的优化代码。
在Sun发布的Java 1.1产品中,配套提供了一系列电子文档,其中有对JDBC更全面的介绍。此外,在由Hamilton Cattel和Fisher编著、Addison-Wesley于1997年出版的《JDBC Database Access with Java》中,也提供了有关这一主题的许多有用资料。同时,书店里也经常出现一些有关JDBC的新书。
JDBC API为何如何复杂
时间: 2024-10-26 09:24:13
JDBC API为何如何复杂的相关文章
JNDI简介,jndi在tomcat中的配置,jdbc api简介,java连接数据库服务
连接数据库 JNDI(Java 命名和目录接口) JNDI(Java 命名和目录接口) 分布式计算环境通常使用命名和目录服务来获取共享的组件和资源.命名和目录服务将名称与位置.服务.信息和资源关联起来. 命名服务提供名称-对象的映射.目录服务提供有关对象的信息,并提供定位这些对象所需的搜索工具.有许多命名和目录服务实现,并且到它们的接口是不同的. Java 命名和目录接口或 JNDI 提供了一个用于访问不同的命名和目录服务的公共接口.请参阅 URL java.sun.com/product
关于Java Database Connectivity您不知道的5件事:提升您和JDBC API的关系
关于Java Database Connectivity您不知道的5件事:提升您和JDBC API的关系 目前,许多开发人员把 Java Database Connectivity (JDBC) API 当作一种数据访问平台,比如 Hibernate 或 SpringMany.然而 JDBC 在数据库连接中不仅仅充当后台角色.对于 JDBC,您了解的越多,您的 RDBMS 交互效率就越高. 在本期 5 件事 系列 中,我将向您介绍几种 JDBC 2.0 到 JDBC 4.0 中新引入的功能.设计
为什么Hibernate调用存储过程比JDBC API要快?
问题描述 1. 通过JDBC API 更新数据库 Connection con = session.connection(); PrepareStatement stmt = con.prepareStatement("update employee set age=age+1 where age>0"); stmt.executeUpdate();2. 调存储过程 CREATE OR REPLACE PROCEDURE updateEmployee() is begin upd
在Java的Spring框架的程序中使用JDBC API操作数据库_java
同时与数据库使用普通的旧JDBC的工作,它变得繁琐写不必要的代码来处理异常,打开和关闭数据库连接等,但Spring的JDBC框架需要的所有低层次细节从打开连接,准备和执行SQL语句,过程异常,处理事务,最后关闭连接. 所以,你所要做的只是定义连接参数,并指定要执行的SQL语句,并做必要的工作,在每次迭代时从数据库中获取数据. Spring JDBC提供了一些方法和相应不同的类与数据库进行交互.我要采取经典和最流行的做法,利用JdbcTemplateclass框架.这是管理的所有数据库的通信和异常
详解Java的JDBC API的存储过程与SQL转义语法的使用_java
正如一个Connection对象创建Statement和PreparedStatement对象,它也创造了CallableStatement对象这将被用来执行调用数据库存储过程. 创建CallableStatement对象:假设,需要执行以下Oracle存储过程: CREATE OR REPLACE PROCEDURE getEmpName (EMP_ID IN NUMBER, EMP_FIRST OUT VARCHAR) AS BEGIN SELECT first INTO EMP_FIRST
Java编程中使用JDBC API连接数据库和创建程序的方法_java
JDBC连接数据库 涉及到建立一个JDBC连接的编程是相当简单的.下面是这些简单的四个步骤: 导入JDBC包: 添加import语句到Java程序导入所需的类在Java代码中. 注册JDBC驱动程序:这一步会导致JVM加载所需的驱动程序实现到内存中,因此它可以实现JDBC请求. 数据库URL制定:这是创建格式正确的地址指向到要连接的数据库. 创建连接对象:最后,代码调用DriverManager对象的getConnection()方法来建立实际的数据库连接. 导入JDBC包: import 语句
详解Java的JDBC API中事务的提交和回滚_java
如果JDBC连接是在自动提交模式下,它在默认情况下,那么每个SQL语句都是在其完成时提交到数据库. 这可能是对简单的应用程序,但有三个原因,你可能想关闭自动提交和管理自己的事务: 为了提高性能 为了保持业务流程的完整性 使用分布式事务 若要控制事务,以及何时更改应用到数据库.它把单个SQL语句或一组SQL语句作为一个逻辑单元,而且如果任何语句失败,整个事务失败. 若要启用,而不是JDBC驱动程序默认使用auto-commit模式手动事务支持,使用Connection对象的的setAutoComm
全面解析JDBC
综述:Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法.JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型.作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法.JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接.JDBC实现了所有这些面向标准的目标并且具有简单.严格类型定义且高性能实现的接口. 如何选择合适的JDBC产品? 有关JDBC最新的信息,有兴趣的读者
JDBC 解决方案(转)
解决 JDBC 解决方案 Java的兴起和发展加速了Internet与Intranet应用的开发.越来越多的企业使用不受平台限制的Java语言,开发复杂的商务 关键任务. 作为Java语言的创始者,JavaSoft公司早就预见到市场需要一项针对Java的数据存取技术,并早已与MERANT公司联手开发 Java JDBC技术,作为Java数据库连接技术的一项标准. JDBC的四种解决方案 JDBC是通用的SQL(结构化查询语言)数据库访问框架,带有简单且功能强大的应用程序接口(API).利用JDB