以前写过一个有关DBUtil的简介和分页处理,参考连接:DBUtil及分页实现
DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码。在不使用框架的情况下,使用DBUtils的概率非常大。
DBUtils三个核心功能介绍:
- QueryRunner类,提供对sql语句操作的API
- ResultSetHandler接口,用于定义select操作后,怎样封装结果集
- DbUtils类,它就是一个工具类,定义了关闭资源与事务处理的方法
- QueryRunner(Database ds),提供了数据源(连接池),DBUtils底层自动维护connection
- update(String sql, Object... params),执行更新数据。(增、删、改)
- query(String sql, ResultSetHandler rsh, Object... params),执行查询
我们知道在执行select语句之后得到的是ResultSet,然后我们还需要对ResultSet进行转换,得到最终我们想要的数据。你可能希望把ResultSet的数据放到一个List中,也可能想把数据放到一个Map中,或是一个Bean中。
DBUtils提供了一个接口ResultSetHandler,它就是用来ResultSet转换成目标类型的工具。你可以自己去实现这个接口,把ResultSet转换成你想要的类型。
DBUtils提供了很多个ResultSetHandler接口的实现,这些实现已经基本够用了,我们通常不用自己去实现ResultSet接口了。
- MapHandler:单行处理器!把结果集转换成Map,其中列名为键
- MapListHandler:多行处理器!把结果集转换成List>;
- BeanHandler:单行处理器!把结果集转换成Bean,该处理器需要Class参数,即Bean的类型;
- BeanListHandler:多行处理器!把结果集转换成List;
- ColumnListHandler:多行单列处理器!把结果集转换成List,使用ColumnListHandler时需要指定某一列的名称或编号,例如:new ColumListHandler(“name”)表示把name列的数据放到List中。
- ScalarHandler:单行单列处理器!把结果集转换成Object。一般用于聚集查询,例如select count(*) from tab_student。
Map处理器:
每一条记录作为一个Map,Map的key是字段名称。
Bean处理器 :
必须搞一个javaBean。
Column处理器:
Scalar处理器:
(4)DbUtils工具类
- closeQuietly(Connection conn) 关闭连接,如果有异常try后不抛
- commitAndCloseQuietly(Connection conn) 提交并关闭连接
- rollbackAndCloseQuietly(Connection conn) 回滚并关闭连接
Bean对象类User:
数据库连接工具类
增删改处理:
到此这篇dbutils工具类(dbutils的作用)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/41404.html