`
pokerwen
  • 浏览: 62735 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JDBC4 简介

阅读更多

转载请注明出处:http://www.blogjava.net/nake/
   自从
 java 发布的第一个版本开始就已经包含 JDBC 了。目前已经有 10 个年头了。 JDBC4.0将要被打包到 java6.0 里( java SE  J2SE 新的名字)。它展现设计的重大提升和提供更加丰富的 API ,更加重视简易开发和提高生产力 

       本文将讨论一些 JDBC 在改善设计和提高性能上的重要的变化。但是不能列举每一个变化。

注解和泛型

我想你已经了解了包含在 JAVA 5.0 的注解( annotations  和泛型( generic 也有翻译范型)。 JDBC4.0 也引进了注解和泛型 DataSet ,这使得执行 sql 语句和 SQL  DML  data manipulation  language  定义变的简单。

       在新的 API 里定义了一套 Query  DataSet 接口。 Query 接口定义了一套方法,这些方法描述了 SQL  select  update 语句。而且详细介绍了结果集如何绑定为一个 DataSet 的。因为泛型所以 DataSet 是可以带参数的。因此可以说 DataSet 接口是类型安全的( type-saft .

所有 Query 接口都要从 BaseQuery 接口继承。可以通过 Connection.createQueryObject() 或者 DataSource.createQueryObject() 得到Query对象。

一个DataSet接口都继承java.util.List   DataSet 是有列概念的数据集,能从 Query 接口得到,并且可以带有参数。 DataSet 可以在连接和断开连接的情况下使用。从而 DataSet实现了 ResultSet (连接) 或者   CachedRowSet (可以断开连接)。因为DataSetjava.util.List的子接口,所以可以通过java.util.Iterator来访问每一行。

DataSet 接口可以带系统或者用户自己定义的类作为参数。通过两种方法你可以实现:构造函数或者 JavaBeans 对象,任何一个办法都能达到将用户自定义的类绑定到结果集的列里。但是在其它支持 JavaBeans 的框架里,用 JavaBeans 对象的实现就显更加容易使用。

下面简单举例说明如何通过新的 API 创建和运行 SQL 查询。用用户自定义的类来定义结果集。(拷贝时候小心有制表符)

pubic class Employee { 
   private int employeeId; 
   private String firstName; 
   private String lastName; 

   public int getEmployeeId() { 
      return employeeId; 
   } 
   
   public setEmployeeId(int employeeId) { 
      this.employeeId = employeeId; 
   } 

   public String getFirstName() { 
      return firstName; 
   } 

   public setFirstName(String firstName) { 
      this.firstName = firstName; 
   } 

   pubic String lastName() { 
      return lastName; 
   } 

   public setLastName(String lastName) { 
      this.lastName = lastName; 
   } 
}

interface EmployeeQueries extends BaseQuery { 
   @Select (sql="SELECT employeeId, firstName, lastName FROM employee") 
   DataSet<Employee> getAllEmployees (); 

   @Update (sql="delete from employee") 
   int deleteAllEmployees (); 
} 


Connection con = ... 

EmployeeQueries empQueries = con.createQueryObject (EmployeeQueries.class); 

DataSet<Employee> empData = empQueries.getAllEmployees ();

 

异常处理的增强:

1.        SQLException 分为两类 transient  non-transient 

2.       支持连锁的异常。

3.       继承了 Iterable 接口。

因为继承了Iterable 所以你可以这样写:

catch(SQLException ex) { 
   for(Throwable t : ex) { 
      System.out.println("exception:" + t); 
   } 
}

JDBC4 SQL EXCEPTION

 

 

最后,注:hibernate 3.5已经添加了对JDBC4的支持

分享到:
评论

相关推荐

    sqljdbc4-4.0.jar包.zip

    《SQL Server 数据库连接的Java实现:sqljdbc4-4.0.jar详解》 在Java编程环境中,与数据库进行交互是常见的任务之一。对于使用Microsoft SQL Server作为后端数据库的项目,开发者通常需要一个合适的驱动程序来建立...

    JDBC简介-JDBC简介

    ### JDBC简介 JDBC(Java Database Connectivity)是一种用于执行SQL语句的Java API,它可以为多种关系型数据库提供统一访问接口。JDBC由一组用Java语言编写的类和接口组成,使得开发人员能够通过标准的方法来连接...

    sqljdbc42 jdbc for java

    一、SQLJDBC42简介 SQLJDBC42是微软SQL Server数据库与Java应用程序之间的桥梁,它实现了Java Database Connectivity (JDBC) API,遵循JDBC 4.2规范。该驱动提供了全面的功能,包括数据查询、事务管理、批处理以及...

    sqljdbc41.jar

    一、sqljdbc41.jar简介 sqljdbc41.jar是Microsoft为Java应用程序提供的一种连接SQLServer数据库的Java Database Connectivity (JDBC)驱动程序。JDBC是Java平台的标准接口,它允许Java应用程序通过Java代码与各种...

    JDBC 与ODBC简介

    4. **易用性**:JDBC的API更符合Java的编程风格,而ODBC的API是C语言风格,对Java开发者来说可能不够直观。 **总结:** JDBC和ODBC都是数据库连接的桥梁,允许应用程序与不同的数据库系统通信。JDBC是Java语言的一...

    jdbc资料jdbc资料jdbc资料pdf

    4. **纯JDBC驱动**: - **简介**:完全基于Java编写,无需任何中间层。 - **优缺点**:性能最好,易于部署,是目前最常用的驱动类型。 #### 三、JDBC API详解 - **`java.sql`包和`javax.sql`包**:这两个包包含...

    JDK版本与JDBC版本的关系

    - JDK 1.6带来了JDBC 4.0,虽然支持JDBC 4的方法有限,但仍然具有一定的实用性。 - 这一版本的驱动可以编译,但大多数新方法都被简化或废弃。 - 尽管如此,JDBC 4.0还是为未来的版本奠定了基础,并引入了一些新的...

    spring4 jdbc star t

    一、Spring JDBC简介 Spring JDBC模块是Spring框架的一部分,它简化了数据库访问,提供了高级抽象层,避免了直接编写繁琐的JDBC代码。Spring JDBC提供了一个模板类`JdbcTemplate`,它封装了数据库连接的创建、关闭...

    spring+springMvc+jdbc 简易框架整合

    4. **控制器和视图**:分析Controller类,理解它们如何处理HTTP请求并返回视图。同时,研究视图是如何被渲染的,可能涉及到JSP、Thymeleaf或其他视图技术。 5. **JDBC操作**:研究如何使用Spring的JDBC模板执行SQL...

    JDBC与SQL Server 2005的连接方式

    - 在系统的环境变量中,将JDBC驱动的路径添加到`CLASSPATH`中,例如:`D:\Program Files\Microsoft SQL Server\sqljdbc_4.0\enu\sqljdbc4.jar`。 - 这一步是为了让Java运行时能够识别并加载所需的JDBC驱动类。 **4....

    尚硅谷jdbc视频教程

    #### 一、JDBC简介 JDBC(Java Database Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了高度的抽象层,使得开发人员能够...

    DB2 JDBC驱动程序及其支持的功能简介

    ### DB2 JDBC驱动程序及其支持的功能简介 #### 一、JDBC驱动程序概述 随着JAVA技术的广泛应用,越来越多的企业选择使用JAVA程序来访问数据库。为了实现这一目标,必须借助JDBC(Java Database Connectivity)驱动...

    一份详尽的jdbc教材

    #### 三、JDBC简介 JDBC是一种由Java编写的API,旨在使Java程序能够执行SQL语句并与关系数据库进行交互。它由一系列类和接口组成,遵循统一的标准,允许开发者编写一次代码即可跨平台和跨数据库使用。 1. **目标**...

    基于JDBC的简易网上购物系统

    4. CartServlet:管理购物车,添加、删除商品,计算总价。 5. OrderServlet:处理订单创建,更新库存,生成订单详情。 除了JDBC和Servlet,此项目可能还涉及到其他技术,如HTML、CSS和JavaScript来构建用户界面,...

    jdbc课程笔记教案.docx

    【JDBC 简介】 JDBC(Java Database Connectivity)是Java编程语言中用于与关系数据库交互的一种标准接口。它的出现使得开发人员可以使用Java语言来处理各种数据库,无需关心不同数据库之间的具体差异。JDBC提供了...

    驱动程序jdbc_4.2

    **一、JDBC简介** JDBC(Java Database Connectivity)是Java编程语言中用来规范客户端程序如何访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。它是Java平台的标准部分,允许程序员以一种标准...

    JDBC Hibernate学习笔记

    - **Type 4 (纯Java实现的本地JDBC驱动)**: 这是最常用的驱动类型,完全由Java实现并且直接与数据库通信,无需额外的客户端驱动。适用于那些不需要经常更换数据库的系统。 #### 二、Hibernate概述 **2.1 Hibernate...

    hive-jdbc-uber-2.6.5.0-292.zip

    一、Hive JDBC简介 Hive JDBC是Hive与SQL兼容的数据库访问接口,它遵循JDBC规范,允许任何支持JDBC的编程语言(如Java、Python等)连接到Hive服务器,执行查询并获取结果。Hive JDBC提供了诸如建立连接、发送SQL语句...

    greenplum_jdbc_5.1.4.zip

    1. **Greenplum数据库简介** Greenplum是一种开源、分布式的关系型数据库管理系统,特别设计用于处理海量数据。它基于PostgreSQL,但扩展了MPP(大规模并行处理)架构,使得数据处理速度大幅提升。在大数据场景下,...

    JDBC笔记JDBC笔记JDBC笔记

    **JDBC(Java Database Connectivity)简介** JDBC是Java编程语言中用来规范客户端程序如何访问数据库的应用程序接口,由Sun Microsystems公司开发并提供,现在属于Oracle公司的产品。它为Java程序员提供了一种标准...

Global site tag (gtag.js) - Google Analytics