在学习spring中有用到,所以在此记录一下


DbUtils入门之QueryRunner

DbUtils简介

根据官网的介绍,DbUtils是一种 JDBC Utility Component (翻译过来大概就是:JDBC实用部件),所以是和数据库操作有关


官网上的简介也称之为 JDBC helper library ,由此可知,DbUtils是一个工具类库,用来进行数据库通信的

用法

官方原文:The core classes/interfaces in DbUtils are QueryRunner and ResultSetHandler(在 DbUtils 中的核心类/接口为 QueryRunner 和 ResultSetHandler)

所以,我们需要掌握这两个类的使用,这篇文章先阐述第一个类

QueryRunner
QueryRunner中一共有6种方法:

  • execute(执行SQL语句)
  • batch(批量处理语句)
  • insert(执行INSERT语句)
  • insertBatch(批量处理INSERT语句)
  • query(SQL中 SELECT 语句)
  • update(SQL中 INSERT, UPDATE, 或 DELETE 语句)

我们主要介绍最后两种(最常用):


源码:
query方法

T query(String sql, ResultSetHandler rsh)
不需要替换参数来执行已给予的SELECT语句
T query(String sql, ResultSetHandler rsh, Object... params)
需要一个或多个替换参数来执行已给予的SELECT语句,并返回一种对象结果

update方法
int update(Connection conn, String sql)
不需要替换参数来执行INSERT、UPDATE、DELETE语句
int update(Connection conn, String sql, Object... params)
需要一个或多个替换参数以及一个数据库连接来执行INSERT、UPDATE、DELETE语句
int update(Connection conn, String sql, Object param)
需要一个替换参数,以及一个数据库连接来执行INSERT、UPDATE、DELETE语句
int update(String sql)
不需要替换参数来执行已给予的INSERT、UPDATE、DELETE语句
int update(String sql, Object... params)
需要一个或多个替换参数来执行INSERT、UPDATE、DELETE语句(参数无需带有连接)
int update(String sql, Object param)
不需要替换参数来执行INSERT、UPDATE、DELETE语句(参数无需带有连接)

本次的案例目的为使用注解配置bean.xml

在使用 query 方法时,如果是数组形式,需要使用BeanListHandler ,单例为BeanHandler



update方法实例:
(不需要替换参数)

方法执行参数: