dbUtils结果集处理器

使用 commons-dbutils jar包

用法 (增/删/改)

QueryRunner qr = new QueryRunner(JdbcUtils.getDataSource());
String sql = "update tb_stu set age=? where sid=?";
Object[] params = {25,100};
qr.update(sql, params);
用法(查询)

QueryRunner qr = new QueryRunner(JdbcUtils.getDataSource());
String sql = "select * from tb_stu where sid=?";
Object[] params = {101};
		
Stu stu = qr.query(sql, new BeanHandler<Stu>(Stu.class), params);
System.out.println(stu);

BeanHandler/BeanListHandler/MapHandler/MapListHandler/ScalarHandler

其中 BeanHandler处可以替换为以上四种,

BeanHandler : 返回与对象类型一致的单个结果

BeanListHandler : 返回与对象类型一致的结果 List 集合  List

MapHandler : 返回与 Map 集合

MapListHandler : 返回 多个 Map 集合组成的 List 集合

ScalarHandler : 单行单列时使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
dbutils是一个Java库,它提供了简化数据库操作的工具类。在dbutils中,有多种方法可以执行查询语句。 首先是使用`query()`方法执行查询语句。这个方法接受三个参数:数据库连接对象、SQL语句和结果处理器。结果处理器是一个接口,用于将查询结果封装到指定的数据结构中。常用的结果处理器有`ColumnListHandler`和`ScalarHandler`。 对于`ColumnListHandler`结果处理器,可以将查询结果的指定列的数据封装到一个List合中。下面是一个使用`ColumnListHandler`的示例代码: ```java QueryRunner qr = new QueryRunner(); String sql = "select * from student"; try { Connection conn = JDBCUtils.getConnection(); List<Object> sno = qr.query(conn, sql, new ColumnListHandler<>("sno")); for (Object obj : sno) System.out.println(obj); DbUtils.closeQuietly(conn); } catch (SQLException e) { e.printStackTrace(); } ``` 另外一个常用的结果处理器是`ScalarHandler`,它将结果第一行的某一列放到某个对象中。下面是一个使用`ScalarHandler`的示例代码: ```java QueryRunner qr = new QueryRunner(); String sql = "select count(*) from student"; try { Connection conn = JDBCUtils.getConnection(); long query = qr.query(conn, sql, new ScalarHandler<Long>()); System.out.println(query); DbUtils.closeQuietly(conn); } catch (SQLException e) { e.printStackTrace(); } ``` 所以,以上是使用dbutils执行查询语句的一些方法和结果处理器

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值