`
韶音韶乐
  • 浏览: 86395 次
  • 性别: Icon_minigender_1
  • 来自: 太原
社区版块
存档分类
最新评论

Connection DBUtils (封装了原始JDBC对数据库的操作的一个开源类库)

阅读更多

DBUtils是Apache组织提供的一个能方便的对各种数据库进行操作的开源类库,它是一个对数据库操作的类库,把对数据库操作的JDBC代码重新进行了封装,简化了我们使用JDBC代码操作数据库的繁琐度,减少重复代码的数量。

DBUtils类库中包括若干类和接口,最重要的是Dbutils、QueryRunner、MapListHandler、BeanListHandler类和ResultSetHandler接口。

 

DbUtils类: DbUtils主要包含了获得数据库连接和关闭ResultSet、Statement、Connection对象的方法,它所定义的方法都是静态方法。

close()方法:DbUtils类有close(Conneciton conn)、close(ResultSet rs)和close(Statement stmt) 三个重载的close()方法,可以分别关闭Connection、ResultSet和Statement对象,并且会在关闭这些对象之前检查所关闭的对象是不是null,不为null才会关闭所对应的对象。

CloseQuietly()方法:CloseQuietly()方法对应close()方法也有若干个重载的方法,作用也与close()方法相同,区别是在关闭所对应对象的过程中,closeQuietly()方法会隐藏可能抛出的SQLException类型的异常。它还有一个closeQuietly(Conneciton conn,Statement stmt,ResultSet rs)重载方法,可以一次关闭三个对象。

LoadDriver()方法:  加载并注册JDBC驱动程序的方法,该方法返回一个boolean类型的变量,true表示成功加载,false表示加载失败,使用这种方法,不需要捕获ClassNotFoundException异常。

2. ResultSetHandler接口: 该接口是DbUtils组件中非常核心的接口,实现这个接口的类,可以把单一的ResultSet结果集对象转换成其他类型的对象,例如List、Map和数   组对象,转换后的对象更容易对返回的数据库记录进行进一步的操作处理,也更方便数据库的记录传递。这个接口中只定义了Object handle(ResultSet rs)一个方法,所有实现该接口的类,都需要重写这个方法,这个方法接收ResultSet类型的对象,把它转换成同样包含数据库记录的其他类型的对象。

 

3. MapListHandler类:这个类是ResultSet接口的实现类,它把ResultSet结果集中的每一条记录转换成一个Map对象,其中字段名作为Key值,字段值作为Value值,再把所有的代表不同记录的Map对象放到一个List对象中返回。

 

4. BeanListHandler类:这个类也是ResultSet接口的实现类,它可以把ResultSet结果集中的每一条记录转换成一个自定义的JavaBean对象,再把所有的代表不同记录的JavaBean对象放到一个List对象中返回。

 

5. ueryRunner类:这个类是用来执行sql语句的。QueryRunner类既可以使用常规方式获得的数据库连接对象,还可以使用通过数据源获得的连接对象。类中重要方法如下:

query(Connection conn,String sql,Object[ ] params,ResultSetHandler rsh) 

这个方法执行数据库查询语句,SQL语句中的参数通过params数组传递,获得的数据库记录保存到ResultSetHandler类型的rsh对象中,并且把这个对象作为方法的返回值进行返回。这个方法内部会把所使用的ResultSet对象和PrepareStatement关闭,但是Connection对象还需要调用者自行负责关闭。

query(String sql,Object[ ] params,ResultSetHandler rsh)

这个方法作用与上面方法一样,不同的地方是,这个方法使用Connection对象是通过当前QueryRunner对象所封装的数据源自动获得的。方法内部会关闭连接对象,不需要方法嗲用者自己关闭连接对象。

query(Connection conn,String sql,ResultSetHandler rsh) 

这个方法执行不需要参数的SQL查询语句。

update(Connection conn,String sql,Object[ ] params) 

这个方法主要执行insert、update和delete等不需要返回结果集对象的SQL语句,方法调用者需要自己负责Connection对象的关闭

update(String sql,Object[ ] params)  

这个方法使用的连接对象是通过数据源所获得的,方法内部会关闭连接对象,不需要调用自己关闭连接对象。

分享到:
评论

相关推荐

    JDBC连接数据库DBUtils操作数据库两个jar包

    `commons-dbutils-1.7.jar`是Apache Commons项目的一部分,提供了一个更安全、更便捷的方式来处理JDBC操作。 DBUtils的核心是QueryRunner类,它提供了执行SQL查询和更新的方法。使用DBUtils可以大大简化上述流程: ...

    commons_dbutils1.4_itmop.com_JDBC_开源工具类库.zip

    Apache Commons DBUtils是一个Java库,它简化了JDBC(Java Database Connectivity)的使用,为开发者提供了更方便、更安全的数据库操作方式。这个压缩包文件"commons_dbutils1.4_itmop.com_JDBC_开源工具类库.zip...

    使用C3P0连接池和DButils进Dao模式的数据库操作

    C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。其主要特点包括自动检测、测试和回收数据库连接,以防止数据库连接泄漏。C3P0通过配置参数,可以灵活地调整连接池的性能,...

    jdbc+数据库连接池+dbutils

    DbUtils是一个简化JDBC操作的工具类库,它提供了更简洁的方式来执行SQL语句,自动释放资源等功能。 ##### DbUtils使用示例 1. **导入依赖** - 添加DbUtils的依赖。 ```xml <groupId>org.apache.commons ...

    Apache-DBUtils封装JDBC

    使用了Apache Commons DbUtils库中的类和方法封装JDBC,使用了org.apache.commons.dbutils.Query...这些类是Apache Commons DbUtils库提供的一部分,用于简化JDBC编程,并提供了一些常见数据库操作的实用工具方法。

    DBUtils(通用的数据库工具类)

    DBUtils是Apache软件基金会开发的一个开源Java库,它提供了一套简单、易用且高度封装的数据库操作API,主要用于简化Java应用程序对数据库的访问。DBUtils的核心思想是为数据库操作提供一个安全、高效的抽象层,使得...

    Apache commons dbutils 1.4jar是JDBC的开源数据库工具包

    Apache Commons DBUtils 1.4 是一个开源的Java库,它是针对Java Database Connectivity (JDBC) API的一个实用工具集。这个库旨在简化数据库操作,使开发者能够更方便、更安全地处理数据库连接和数据操作。DBUtils的...

    python-dbutils 简单封装

    Python的dbutils模块是Apache的一个开源项目,它提供了一套用于数据库操作的工具类,能够帮助简化数据库连接和管理,提高开发效率。本教程将详细讲解如何对dbutils进行简单的封装,以更好地适应实际的Python数据库...

    JDBC_DBUtils查询操作处理

    DBUtils是Apache Commons项目的一部分,它是一个小型、实用的工具类库,用于简化JDBC编程。DBUtils提供了异常处理、资源管理(如关闭数据库连接)以及查询结果集的处理等功能,让开发者能够更方便、安全地使用JDBC...

    使用JDBC总结操作数据库

    - `QueryRunner`是第三方库(如Apache的DBUtils)提供的一个便捷工具,它简化了JDBC操作。例如,使用QueryRunner执行SQL语句: ```java // 获取连接对象 Connection conn = db.getConnection(); // 新建Query...

    jdbc资料(数据库crud操作)

    Apache的DBUtils是一个简单的数据库工具库,它封装了JDBC的一些繁琐操作,如处理结果集、异常处理等,使代码更加简洁、易读。主要特性有: 1. QueryRunner:提供了方便的SQL执行方法,如query()和update(),支持预...

    nodejs封装好的mysql数据库模块,带mysql连接池以及百万测试数据

    4. **test.js**:这是一个测试脚本,用于验证`dbUtils.js`中数据库操作的正确性。可能包含各种增删改查操作的示例,以及如何调用封装好的数据库函数,为开发者提供了一个快速上手的指南。 5. **test.sql**:这个...

    JDBC连接使用的包与DBUtils工具包

    接下来,我们关注`commons-dbutils-1.6.jar`,这是一个Apache Commons项目,提供了一个简化JDBC操作的实用工具库。DBUtils旨在降低使用JDBC进行数据库操作的复杂性,它提供了更安全、更易于管理的代码,减少了可能...

    JDBC及DBUtils

    DBUtils是Apache组织提供的一个实用工具库,它简化了JDBC的使用,避免了许多常见的错误和繁琐的资源管理。DBUtils提供了如下便利功能: - **数据库连接池**:管理和复用数据库连接,提高效率。 - **异常处理**:...

    javaWeb入门jar(BeanUtils C3p0 DBCP DButils dom4j JDBC jstl)

    2. **C3p0**:C3p0是一个开源的JDBC连接池,用于管理数据库连接。它可以提高数据库操作的性能,通过复用已存在的连接而非每次请求都创建新的连接。C3p0提供了自动测试连接、空闲连接回收、连接池大小控制等功能,...

    DBUtils数据库的使用

    DBUtils是Java编程环境中一个非常实用的数据库操作工具包,由Apache软件基金会提供。它基于JDBC(Java Database Connectivity)并提供了对数据库操作的简化,让开发者能够更方便、高效地进行数据存取。DBUtils的主要...

    采用Apache dbutils操作数据库

    Apache DBUtils是一个基于Java的开源库,它提供了一种简单且有效的处理数据库连接的方法,减少了在应用程序中编写数据库操作代码的复杂性。DBUtils的主要设计目标是简化数据库访问,通过提供一套实用工具来处理常见...

    开发类库DButils

    DButils 是一个由 Apache Software Foundation 开发的 Java 类库,用于简化数据库操作。它作为 JDBC(Java Database Connectivity)的一个辅助工具,提供了更加简洁、健壮的API,减轻了开发人员处理数据库连接、执行...

    DBUtils数据库工具类

    DBUtils是Apache Commons项目中的一个Java库,专为简化数据库操作而设计。它是一个轻量级的工具类库,提供了一套简洁、高效且线程安全的API,可以帮助开发者更方便地执行SQL语句,处理结果集,以及管理数据库连接。...

    模仿DBUtils(自己模仿DBUtils写的简易DBUtils)

    DBUtils是Apache Commons库中的一个组件,它提供了一套简单易用的数据库操作API,用于简化Java中的数据库访问。在本项目中,你将找到一个自己编写的简易DBUtils实现,虽然它不是Apache官方的DBUtils,但其设计思想和...

Global site tag (gtag.js) - Google Analytics