该工具包主要用来操作数据库,进行增删改查。将结果包装到对象或对象集合中。

在写web项目的时候,经常会涉及到数据库的操作。比如连接数据库获取连接对象、执行sql语句、获得结果。如果对每一个方法都写这么多重复代码比较繁重。commons-dbutils-1.6包将我们冲这么繁重的任务中解放出来。

该包中比较重要的对象是QueryRunner,常用的方法

1)update  //执行增加、删除、修改

2)query  // 执行查询

说明:如果在新建一个QueryRunner对象时传入了DataSource 对象,那么在执行SQL语句的时候不需要再传入Connection对象了,因为它会自动在DataSource中获得。

例子:

1)update 操作

public void saveUser(User user) {
String sql = "INSERT INTO USER(uname, ugender, uage, uemail, utel, uaddress) VALUES(?,?,?,?,?,?)";
try {
qr.update(conn, sql, user.getUname(), user.getUgender(), user.getUage(), user.getUemail(), user.getUtel(), user.getUaddress());
} catch (SQLException e) {
e.printStackTrace();
} finally {
JdbcUtil.closeConnection(conn);
} }

2)查询操作

public User getUser(User user) {
String sql = "SELECT * FROM USER WHERE uemail=?";
User user2 = null;
try {
user2 = qr.query(conn, sql, new BeanHandler<User>(User.class), user.getUemail()); } catch (SQLException e) {
e.printStackTrace();
} finally {
JdbcUtil.closeConnection(conn);
}
return user2;
}

代码中有些类变量,定义如下

private Connection conn = JdbcUtil.getConnection();   //用于获取数据库的连接
private QueryRunner qr = new QueryRunner();

在执行查询操作中,经常需要使用保存结果为一个对象,或者一个对象集合。commons-dbutils-1.6提供了很多方法用于解决该类问题。

常用的有BeanHandlerBeanListHandlerMapHandlerMapListHandlerScalarHandler具体用法可以查看相应的官方文档,比较简单。

dbutil组件的常见用法的更多相关文章

  1. layui(二)——layer组件常见用法总结

    layer是layui的代表作,功能十分强大,为方便以后快速配置这里对其常见用法做了简单总结 一.常用调用方式 //1.普通消息:alert(content,[options],[yesCallBac ...

  2. [转]EasyUI——常见用法总结

    原文链接: EasyUI——常见用法总结 1. 使用 data-options 来初始化属性. data-options是jQuery Easyui 最近两个版本才加上的一个特殊属性.通过这个属性,我 ...

  3. JTable常见用法细则+设置某列可编辑+滚动表格

    JTable常见用法细则 JTable是Swing编程中很常用的控件,这里总结了一些常用方法以备查阅.欢迎补充,转载请注明作者与出处. 一.创建表格控件的各种方式: 1)  调用无参构造函数. JTa ...

  4. React之特点及常见用法

    1.什么是React? React是一个用于构建用户界面的JavaScript库.主要用于构建UI,很多人认为Reatc是MVC中的V(视图). React起源于Facebook的内部项目,用来架构I ...

  5. Linux中find常见用法

    Linux中find常见用法示例 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; find命令的参数 ...

  6. 第四节:Vue表单标签和组件的基本用法,父子组件间的通信

    vue表单标签和组件的基本用法,父子组件间的通信,直接看例子吧. <!DOCTYPE html> <html> <head> <meta charset=&q ...

  7. php中的curl使用入门教程和常见用法实例

    摘要: [目录] php中的curl使用入门教程和常见用法实例 一.curl的优势 二.curl的简单使用步骤 三.错误处理 四.获取curl请求的具体信息 五.使用curl发送post请求 六.文件 ...

  8. Guava中Predicate的常见用法

    Guava中Predicate的常见用法 1.  Predicate基本用法 guava提供了许多利用Functions和Predicates来操作Collections的工具,一般在 Iterabl ...

  9. find常见用法

    Linux中find常见用法示例 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; find命令的参数 ...

随机推荐

  1. 返回content-length=0问题解决

    遇到一个奇怪问题,有时候会不显示css或图片文件,通过调试工具发现请求返回长度都是0.研究半天未果,初步猜测可能是过滤器给拦截了. 果然在一个过滤器中发现相关代码: HttpRequestWrappe ...

  2. ICLR 2016 - Workshop Track International Conference on Learning Representations 论文papers

    ICLR 2016 - Workshop Track International Conference on Learning Representations May 2 - 4, 2016, Car ...

  3. iOS开源项目:AwesomeMenu

    https://github.com/levey/AwesomeMenu 模仿Path的menu,使用CoreAnimation实现. 1.首先说使用 AwesomeMenuItem *starMen ...

  4. 取出html中指定id的元素的内容

    private void btnGet_Click(object sender, EventArgs e) { string PageUrl = "http://www.cnblogs.co ...

  5. Ubuntu 所需要的中文字体美化操作步骤

    中文字体美化是个很讨厌的事情,无数初学者在这里面浪费了无数时间,做了无数没有意义的事情.但这也是不得不做的,我把 Debian/Ubuntu 所需要的中文字体美化操作步骤详细记录在这里,希望能节约大家 ...

  6. WebService_java编写Webservice_Axis2_1.6

    最近给某省国家电网写一套系统,由于内部数据库单向隔离装置不支持ODBC, 原来c#写的webservice 和.net ,iis就需要换成java这一套... 下面是用Axis2 写的webservi ...

  7. C#文件系统管理【转】

    目录 前言 Directory类和DirectoryInfo类 File类和FileInfo类 Path类 前言 管理文件系统主要是对计算机中文件和目录的管理,例如,读取文件信息.删除文件和读取目录信 ...

  8. 高性能HTML

    避免使用Iframe Iframe也叫内联frame,可以把一个HTML文档嵌入到另一个文档中.使用iframe的好处是被嵌入的文档可以完全独立于其父文档,凭借此特点我们通常可以使浏览器模拟多线程,需 ...

  9. .NET中的六个重要概念

    内容导读 概述 当你声明一个变量背后发生了什么? 堆和栈 值类型和引用类型 哪些是值类型,哪些是引用类型? 装箱和拆箱 装箱和拆箱的性能问题 一.概述 本文会阐述六个重要的概念:堆.栈.值类型.引用类 ...

  10. redhat下安装mysql 5.6.20,解压zip包,查看已经安装过的mysql,卸载rpm安装包,安装mysqlserver端和client,改动mysqlusername,登陆mysql,启动关闭mysql

     1 将相关的mysql rpm包上传到redhat上 2  我的电脑是Redhat 6.*版本号.所以这里使用上面一个 3  解压zip包 4  安装下面几个rpm MySQL-client-a ...