目录


Dbutils简介

commons-dbutisApache 组织提供的一个开源JDBC工具类库,它对JDBC进行了简单的封装,学习成本极低 ;

并且使用 dbutils 能极大的简化 jdbc 编码的工作量,同时也不会影响程序的性能,因为它只是进行简单的封装,简化sql语句的编写;

因此,dbutils 成为很多不喜欢 hibernate 的首选 ;


API 介绍

  • org.apache.commons.dbutils.QueryRunner

    它提供了 Query()、update()方法 ;
    
    对于创建 QueryRunner ,有 2 种方法,也就是它有2种构造器;
    
        ·一种是需要提供连接池当参数的,这个没啥好说的,跟我们之前学的差不多;
    
        ·另一种是不提供连接池的,这种连接用完需要自己手动关闭,主要是用于事务,为了在一条连接上执行多条sql语句 ;
    
        ·还有可以用批处理的方法,就是参数接受一个二维数组,并且调用 batch方法 ;

Dbutils 已实现的结果集处理器 :

    ·ArrayHandler : 把结果集的第一行数据转成对象数组,不管结果集查出多少条数据,仅转换第一条;

    ·ArrayListHandler : 把结果集中的每一行数据都转成一个数组,再存放到List中 ;

    ·BeanHandler : 把结果集中的第一行数据封装到一个对应的 Javabean 实例中 ;

    ·BeanListHandler : 把结果集中的每一行数据封装到 Javabean 中,再存放进list里面 ;

    ·ColumnListHandler : 把结果集的某一列封装进list里面,参数写列名。

    ·KeyedHandler(key):将结果集的每一行数据封装到一个Map里面,再将这些Map存进一个Map中,其key为指定的key  ;

    ·MapHandler :将结果集中的第一行数据封装到一个Map里面,key是列名,value是对应的值 ;

    ·MapListHandler : 将结果集中的每一行数据都封装到一个Map里面,最后存进一个 list 里面 ;

    ·ScalarHandler :将某一列的数据,转成一个对象,更适合求总记录数;

    ·以上几种都可以可以返回查询的总记录数,即结果集的数据量,可以根据返回的集合,获取其大小,即可;

    ·也可以直接查询 count(*) 返回结果到ArrayHandler 里面,这里注意 count(*) 返回的结果是long类型 ;

    ·ScalarHandler  是最适合求总记录数的 ;

(二十三)Dbutils 工具介绍的更多相关文章

  1. day18(JDBC事务&连接池介绍&DBUtils工具介绍&BaseServlet作用)

    day18总结 今日思维导图: 今日内容 事务 连接池 ThreadLocal BaseServlet自定义Servlet父类(只要求会用,不要求会写) DBUtils à commons-dbuti ...

  2. 十二、jdk工具之jcmd介绍(堆转储、堆分析、获取系统信息、查看堆外内存)

    目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk ...

  3. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. 系列二VS项目软件配置工具介绍

    原文:系列二VS项目软件配置工具介绍 Svn和VisualSvn介绍 在使用TortoiseSvn(SVN客户端)+ AnkhSvn(VS2008插件) +VisualSvn Server(版本控制服 ...

  5. Java学习笔记49(DBUtils工具类二)

    上一篇文章是我们自己模拟的DBUtils工具类,其实有开发好的工具类 这里使用commons-dbutils-1.6.jar 事务的简单介绍: 在数据库中应用事务处理案例:转账案例 张三和李四都有有自 ...

  6. 十三、MySQL之IDE工具介绍及数据备份

    一.IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 二.MySQL数据备份 # ...

  7. Java学习之DBUtils工具的学习

    简介 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影 ...

  8. DBUtils工具

    DBUtils工具 简介 是Apache旗下的产品.是对jdbc的简单封装.提供出通用的jdbc操作方法.简化开发者使用jdbc的成本. 常用的API说明 |- QueryRunner类: 主要进行j ...

  9. Java基础-DButils工具类(QueryRunner)详解

    Java基础-DButils工具类(QueryRunner)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC ...

随机推荐

  1. centos7安装gitlab 支持带认证https,开启邮件功能 超级简单.

    官方安装说明:https://about.gitlab.com/install/#centos-7 自定义yum源 自行搞定 下载gitlab 官方安装: curl -s https://packag ...

  2. vue项目,前端导出excel

    今天研究一下前端如何导出excel,边查边实践,边记录 1.安装依赖库 xlsx:这是一个功能强大的excel处理库,但是上手难度也很大,还涉及不少二进制的东西 file-saver:ES5新增了相关 ...

  3. Python2.7编码问题:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position...解决方法

    解决方法: 在Python程序最前面加上以下语句: import sys reload(sys) sys.setdefaultencoding('utf-8')

  4. codeforces#1234F. Yet Another Substring Reverse(子集dp)

    题目链接: https://codeforces.com/contest/1234/problem/F 题意: 给出一个只包含前20个小写字母的字符串,一次操作可以让一段字符颠倒顺序 最多一次这样的操 ...

  5. ZR#954 分组

    ZR#954 分组 解法: 设 $ f[i][a][b] $ 表示考虑了排序后的前 $ i $ 个人,目前已经有 $ a $ 个组配好了,还有 $ b $ 个组只有组员没有组长的最小代价.转移时,考虑 ...

  6. 解决百度文字识别SDK拍照不回调问题

    在使用百度文字识别SDK的时候,发现点了拍照后camera.takePicture(ShutterCallback shutter, PictureCallback raw,PictureCallba ...

  7. G-LAB四月份作业-数据可视化问题探讨

    G-LAB四月份作业-数据可视化问题探讨 引子: 数据平台项目建设正在按照公司的计划开展执行中,作为平台建设项目参与者之一,感觉目前我们现有的MIS报表平台数据也不可谓不丰富,但是不论从提供给用户的数 ...

  8. jinja2-宏,include, import

    一 宏 宏类似常规编程语言中的函数.它们用于把常用行为作为可重用的函数,取代 手动重复的工作.如果宏在不同的模板中定义,你需要首先使用 import,比如 {% macro input(name, v ...

  9. Apache Flink - 命令

    $flink命令位置 命令 选项 jar包位置 \ --input 输入文件位置 --out 输出文件位置 ./bin/flink run ./examples/batch/WordCount.jar ...

  10. form表单无刷新提交

    Ajax最大的特点就是可以不刷新页面而实现数据的通信及更改页面信息.那么用AJAX进行后台通信传递字符串还是可以的,遇到上传文件该怎么办呢?基于安全考虑,JS是不能直接进行文件操作的,只好用原始的fr ...