(二十三)Dbutils 工具介绍
目录
Dbutils简介
commons-dbutis
是Apache
组织提供的一个开源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 工具介绍的更多相关文章
- day18(JDBC事务&连接池介绍&DBUtils工具介绍&BaseServlet作用)
day18总结 今日思维导图: 今日内容 事务 连接池 ThreadLocal BaseServlet自定义Servlet父类(只要求会用,不要求会写) DBUtils à commons-dbuti ...
- 十二、jdk工具之jcmd介绍(堆转储、堆分析、获取系统信息、查看堆外内存)
目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- 系列二VS项目软件配置工具介绍
原文:系列二VS项目软件配置工具介绍 Svn和VisualSvn介绍 在使用TortoiseSvn(SVN客户端)+ AnkhSvn(VS2008插件) +VisualSvn Server(版本控制服 ...
- Java学习笔记49(DBUtils工具类二)
上一篇文章是我们自己模拟的DBUtils工具类,其实有开发好的工具类 这里使用commons-dbutils-1.6.jar 事务的简单介绍: 在数据库中应用事务处理案例:转账案例 张三和李四都有有自 ...
- 十三、MySQL之IDE工具介绍及数据备份
一.IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 二.MySQL数据备份 # ...
- Java学习之DBUtils工具的学习
简介 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影 ...
- DBUtils工具
DBUtils工具 简介 是Apache旗下的产品.是对jdbc的简单封装.提供出通用的jdbc操作方法.简化开发者使用jdbc的成本. 常用的API说明 |- QueryRunner类: 主要进行j ...
- Java基础-DButils工具类(QueryRunner)详解
Java基础-DButils工具类(QueryRunner)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC ...
随机推荐
- centos7安装gitlab 支持带认证https,开启邮件功能 超级简单.
官方安装说明:https://about.gitlab.com/install/#centos-7 自定义yum源 自行搞定 下载gitlab 官方安装: curl -s https://packag ...
- vue项目,前端导出excel
今天研究一下前端如何导出excel,边查边实践,边记录 1.安装依赖库 xlsx:这是一个功能强大的excel处理库,但是上手难度也很大,还涉及不少二进制的东西 file-saver:ES5新增了相关 ...
- Python2.7编码问题:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position...解决方法
解决方法: 在Python程序最前面加上以下语句: import sys reload(sys) sys.setdefaultencoding('utf-8')
- codeforces#1234F. Yet Another Substring Reverse(子集dp)
题目链接: https://codeforces.com/contest/1234/problem/F 题意: 给出一个只包含前20个小写字母的字符串,一次操作可以让一段字符颠倒顺序 最多一次这样的操 ...
- ZR#954 分组
ZR#954 分组 解法: 设 $ f[i][a][b] $ 表示考虑了排序后的前 $ i $ 个人,目前已经有 $ a $ 个组配好了,还有 $ b $ 个组只有组员没有组长的最小代价.转移时,考虑 ...
- 解决百度文字识别SDK拍照不回调问题
在使用百度文字识别SDK的时候,发现点了拍照后camera.takePicture(ShutterCallback shutter, PictureCallback raw,PictureCallba ...
- G-LAB四月份作业-数据可视化问题探讨
G-LAB四月份作业-数据可视化问题探讨 引子: 数据平台项目建设正在按照公司的计划开展执行中,作为平台建设项目参与者之一,感觉目前我们现有的MIS报表平台数据也不可谓不丰富,但是不论从提供给用户的数 ...
- jinja2-宏,include, import
一 宏 宏类似常规编程语言中的函数.它们用于把常用行为作为可重用的函数,取代 手动重复的工作.如果宏在不同的模板中定义,你需要首先使用 import,比如 {% macro input(name, v ...
- Apache Flink - 命令
$flink命令位置 命令 选项 jar包位置 \ --input 输入文件位置 --out 输出文件位置 ./bin/flink run ./examples/batch/WordCount.jar ...
- form表单无刷新提交
Ajax最大的特点就是可以不刷新页面而实现数据的通信及更改页面信息.那么用AJAX进行后台通信传递字符串还是可以的,遇到上传文件该怎么办呢?基于安全考虑,JS是不能直接进行文件操作的,只好用原始的fr ...