commons-dbutils-1.7.jar的使用
- 获取数据源
- 方法使用
- ArrayHandler:把结果集中的第一行数据转成对象数组。
- ArrayListHandler:把结果集中的每一行数据都转成一个对象数组,再存放到List中。
- BeanHandler:将结果集中的第一行数据封装到一个对应的JavaBean实例中
- BeanListHandler:将结果集中的每一行数据都封装到一个对应的JavaBean实例中,存放到List里。
- ColumnListHandler:将结果集中某一列的数据存放到List中。
- ScalarHandler:将结果集中某一条记录的其中某一列的数据存成Object。
- MapHandler:将结果集中的第一行数据封装到一个Map里,key是列名,value就是对应的值
- MapListHandler:将结果集中的每一行数据都封装到一个Map里,然后再存放到List。
- MapListHandler:将结果集中的每一行数据都封装到一个Map里,然后再存放到List。
获取数据源
// 获取数据源
QueryRunner query = new QueryRunner(DBUtils.geteDataSource());
方法使用
ArrayHandler:把结果集中的第一行数据转成对象数组。
Object[] list = query.query(sql, new ArrayHandler());
ArrayListHandler:把结果集中的每一行数据都转成一个对象数组,再存放到List中。
List<Object[]> list = query.query(sql, new ArrayListHandler());
重点: BeanHandler
BeanHandler:将结果集中的第一行数据封装到一个对应的JavaBean实例中
Menu menu = query.query(sql, new BeanHandler<Menu>(Menu.class));
重点: BeanListHandler
BeanListHandler:将结果集中的每一行数据都封装到一个对应的JavaBean实例中,存放到List里。
List<Menu> list = query.query(sql, new BeanListHandler<Menu>(Menu.class));
ColumnListHandler:将结果集中某一列的数据存放到List中。
List<数据类型> = query.query(sql, new ColumnListHandler<数据类型>("列名"));
ScalarHandler:将结果集中某一条记录的其中某一列的数据存成Object。
String sql = "select count(id) from menu"
Object obj = query.quert(sql,new ScalarHandler());
MapHandler:将结果集中的第一行数据封装到一个Map里,key是列名,value就是对应的值
Map map = query.quert(sql,new MapHandler());
MapListHandler:将结果集中的每一行数据都封装到一个Map里,然后再存放到List。
List<Map<String, Object>> list = query.query(sql, new MapListHandler());
MapListHandler:将结果集中的每一行数据都封装到一个Map里,然后再存放到List。
基本不用
KeyedHandler:将结果集中的每一行数据都封装到一个Map里,然后再根据指定的key把每个Map再存放到一个Map里。
List<Map<String, Object>> map = query.query(sql, new MapListHandler());