DBUtils工具
API介绍
为了更加简单地使用JDBC,Apache组织提供了一个工具类库commons-dbutils组件。该组件实现了对JDBC的简单封装,可以在不影响性能的情况下极大简化JDBC的编码工作量。
commons-dbutils的核心是两个类和一个接口:DBUtils类、QueryRunner类、ResultSetHandler接口
DBUtils类
主要为如关闭连接、装载JDBC驱动程序之类的常规工作提供方法,它提供的方法都是静态方法close()
closeQuietly(Connection conn,Statement stmt,ResultSet rs)
commitAndCloseQuietly(Connection conn)
loadDriver(java.lang.String driverClassName)
QueryRunner类
query(Connection conn, String sql, ResultSetHandler rsh,Object[] params)
query(String sql, ResultSetHandler rsh, Object[] params)
query(Connection conn, String sql, ResultSetHandler rsh)
update(Connection conn, String sql, Object[] params)
update(Connection conn, String sql)
ResultSetHandler接口
AbstractKeyedHandler 该类为抽象类,能够把结果集里面的数据转换为用Map存储。
AbstractListHandler 该类为抽象类,能够把结果集里面的数据转换为用List存储,抽象类。
ArrayHandler 把结果集中的第一行数据转成对象数组。
ArrayListHandler 把结果集中的每一行数据都转成一个对象数组,再将数组存放到List中。
BaseResultSetHandler 把结果集转换成其他对象的扩展。
BeanHandler 将结果集中的第一行数据封装到一个对应的JavaBean实例中。
BeanListHandler 将结果集中的每一行数据都封装到一个对应的JavaBean实例中,存放到List里。
BeanMapHandler 将结果集中的每一行数据都封装到一个对应的JavaBean实例中,然后再根据指定的key把每个JavaBean再存放到一个Map里。
ColumnListHandler 将结果集中某一列的数据存放到List中。
KeyedHandler 将结果集中的每一行数据都封装到一个Map里,然后再根据指定的key把每个Map再存放到一个Map里。
MapHandler 将结果集中的第一行数据封装到一个Map里,key是列名,value就是对应的值。
MapListHandler 将结果集中的每一行数据都封装到一个Map里,然后再存放到List中。
ScalarHandler 将结果集中某一条记录的其中某一列的数据存储成Object对象。
ResultSetHandler实现类
ArrayHandler和ArrayListHandler
可以将把结果集中的第一行数据转成对象数组。
Beanhandler、BeanListHandler和BeanMapHandler
MapHandler和MapListHandler
将结果集数据存成Map映射。