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

在写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. 220V和380V电器设备电流计算方法

    220V和380V电器设备电流计算方法 1)单相电机电流=功率/(电压*功率因数*效率): 2)三相电机电流=功率/(1.732*电压*功率因数*效率): 3)空载电流为额定电流的30-50%左右: ...

  2. linux命令显示文件内容行号|linux将内容以行号显示出来

            查看文件内容:cat /etc/shadow里面所有内容         cat命令是全部输出          cat /etc/shadow -n 输出内容及行号,空行业输出了   ...

  3. python核心模块之pickle和cPickle解说

    pickle模块使用的数据格式是python专用的,而且不同版本号不向后兼容,同一时候也不能被其它语言说识别.要和其它语言交互,能够使用内置的json包使用pickle模块你能够把Python对象直接 ...

  4. WinForm中DataGridView验证单元格输入的是数字

    转载:http://www.cnblogs.com/ganqiyin/archive/2013/02/18/2915491.html 事件:DataGridView验证单元格输入的是数字,DataGr ...

  5. 使用Struts2服务端与android交互

    转自:http://www.cnblogs.com/android-html5/archive/2011/09/25/2534107.html android--使用Struts2服务端与androi ...

  6. Java集合类ArrayList循环中删除特定元素

    在项目开发中,我们可能往往需要动态的删除ArrayList中的一些元素. 一种错误的方式: <pre name="code" class="java"&g ...

  7. Google Scholar 论文参考文献的自动生成

    写论文经常需要写出参考文献,各种格式实在是麻烦的不行啊,在网上看到一个参考文献自动生成的博客,现在转载下来,以备以后自已能用. 主要是使用Google Scholar. Step 1: 打开Googl ...

  8. 【架构】OpenResty相关资料

    OpenResty最佳实践 在2012年的时候,我加入到奇虎360公司,为新的产品做技术选型.由于之前一直混迹在python圈子里面,也接触过nginx c模块的高性能开发,一直想找到一个兼备pyth ...

  9. [Node.js] 4. Modules

    4.2 Missing Exports Notice the two different files: high_five.js on the left side andapp.js on the r ...

  10. Reduce 优化(mapr)

    1.合理设计桶的大小,插入桶的时候,桶的数目和reduce的数目一致,结合map的输出大小合理设置桶的大小,否则在reduce阶段就会非常慢. 2.查看reduce的copy的速率,如果map out ...