开源框架——DBUtils
来源:互联网 发布:linux deploy下载 编辑:程序博客网 时间:2024/06/08 10:34
DBUtils 框架
1、概述:
DBUtils是java编程中的数据库操作实用工具,小巧简单实用。
DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码。
Dbutils三个核心功能介绍
QueryRunner中提供对sql语句操作的API.
ResultSetHandler接口,用于定义select操作后,怎样封装结果集.
DbUtils类,它就是一个工具类,定义了关闭资源与事务处理的方法
2、QueryRunner 核心类:
QueryRunner(DataSource ds) ,提供数据源(连接池),DBUtils底层自动维护连接connection
update(String sql, Object… params) ,执行更新数据 insert update delete
query(String sql, ResultSetHandler rsh, Object… params) ,执行查询 select
3、ResultSetHandler结果集处理类
ArrayHandler 将结果集中的第一条记录封装到一个Object[]数组中,数组中的每一个元素就是这条记录中的每一个字段的值
ArrayListHandler 将结果集中的每一条记录都封装到一个Object[]数组中,将这些数组在封装到List集合中。
BeanHandler 将结果集中第一条记录封装到一个指定的javaBean中。
BeanListHandler 将结果集中每一条记录封装到指定的javaBean中,将这些javaBean在封装到List集合中
ColumnListHandler 将结果集中指定的列的字段值,封装到一个List集合中
KeyedHandler 将结果集中每一条记录封装到Map
//更新update:@Testpublic void testUpdate() throws Exception{ try { //1 核心类 QueryRunner queryRunner = new QueryRunner(C3P0Utils.getDataSource()); //2 sql String sql = "update category set cname=? where cid = ?"; //3 参数 Object[] params = {"家电","c006"}; //4执行 queryRunner.update(sql, params); } catch (Exception e) { throw new RuntimeException(e); } }//查询单一字段 Query:@Testpublic void testFindById() throws Exception{ try { //1 核心类 QueryRunner queryRunner = new QueryRunner(C3P0Utils.getDataSource()); //2 sql String sql = "select * from category where cid=?"; //3 参数 Object[] params = {"c003"}; //4执行 Category category = queryRunner.query(sql, new BeanHandler<Category>(Category.class), params); System.out.println(category); } catch (Exception e) { throw new RuntimeException(e); } }//查询所有:@Testpublic void testFindAll() throws Exception{ try { //1 核心类 QueryRunner queryRunner = new QueryRunner(C3P0Utils.getDataSource()); //2 sql String sql = "select * from category"; //3 参数 Object[] params = {}; //4执行 List<Category> allCategory = queryRunner.query(sql, new BeanListHandler<Category>(Category.class), params); for (Category category : allCategory) { System.out.println(category); } } catch (Exception e) { throw new RuntimeException(e); } }// 查询总记录数:@Testpublic void testCount() throws Exception{ try { //1 核心类 QueryRunner queryRunner = new QueryRunner(C3P0Utils.getDataSource()); //2 sql String sql = "select count(*) from category"; //3 参数 Object[] params = {}; //4执行 Long numLong = (Long) queryRunner.query(sql, new ScalarHandler(), params); int num = numLong.intValue(); System.out.println(num); } catch (Exception e) { throw new RuntimeException(e); } }
DBUtils框架使用总结:、
- 加载JDBC驱动程序类,并用DriverManager来得到一个数据库连接conn。
- 实例化 QueryRunner,得到实例化对象qRunner。
- qRunner.update()方法,执行增改删的sql命令, qRunner.query()方法,得到结果集。
- 开源框架——DBUtils
- DBUtils开源框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- Apache—DBUtils框架
- xUtils框架—DbUtils
- Apache—DBUtils框架
- 解决 ScrollView嵌套ListView listview的冲突问题 ---简单粗暴
- 第四十八篇:JAVA加密解密之DSA(Digital Signature Algorithm)算法
- 能够抑制网络风暴的是?
- 如何把一个包含自定义对象的数组序列化到磁盘
- SQL Server 2008 开启数据库的远程连接
- 开源框架——DBUtils
- WOJ1040-Magic Building
- 第四十九篇: JAVA加密解密之凯撒加密(Caesar cipher)算法
- 十、jquery-ui datepicker实现选择一周的日期
- IO流详解
- 用Kubernetes部署超级账本Fabric的区块链即服务
- 小米两款千元机同时“挤”iphone,谁将是赢家呢?
- MarkDown使用技巧整理
- 小明的难题