QuerryRunner数据查询的几种操作

xiaoxiao2022-06-11  13

1.ArrayHandler:将结果集的第一行存储到对象数组中 Object[]

QueryRunner qr= new QuerryRunner(); String sql = "select * from 表名"; Object[] result = qr.query(con,sql,new ArrayHandler); for(Object obj:result){ System.out.println(obj); }

2.ArrayListHandler:将结果集的每一行,封装到对象数组中,出现很多对象数组

对象数组存储到List集合

QueryRunner qr = new QueryRunner(); String sql = "select * from 表名"; List<Objec[]> list = qr.query(con,sql,new ArrayListHandler); for(Object[] a:list){ for(Object obj:a){ Sytem.out.println(obj); } }

3.BeanHandler:将结果集的第一行数据封装成javaBean对象

原理:BeanHandler结果集,数据表第一行,封装到JavaBean对象中,结果集第一行封装成数据表类的对象

QueryRunner qr= new QueryRunner(); String sql = "select * from 表名"; Sort s = qr.query(con,sql,new BeanHandler<表的类名>(表的类名.clas));

4.BeanListHandler:将数据集的每一行数据,封装成JavaBean对象

多个JavaBean对象封装到List集合中

List<Object> list =qr.query(con,sql,new BeanListHandler<Object>('列名')); for(Object obj:list){ System.ou.println(obj); }

5.ColumnListHandler:结果集,指定列的数据,存储到List集合

调用方法Query,传递结果集实现类ColumnListHandler,实现类构造方法中,使用列名

List<Object> lsit = qr.query(con,sql,new ColumnListHandler<Object>('列名')); for(Object obj:list){ System.out.println(obj); }

6.ScalarHandler:对于查询后,只有一个结果

String sql = "select count(*) from 表名"; long count = qr.query(con,sql,new ScalarHandler<Long>()); System.out.println(count);

7.MapHandler:将结果集第一行数据,封装到Map集合中

Map<键,值>;其中键是列名,值:这列是的数据;返回集:map集合,Map接口实现类,泛型

Map<String,Object>= qr.query(con,sql,new MapHandler()); for(String key:map.kepSet()){ System.out.println(key+map.get(key)); }

8.MapListHandler:将结果集每一行存储到map集合,键:列名,值:数据

map集合过多,存储到List集合

调用方法query,传递结果集实现类MapListHandler

List<Map<String,Objec>map:list>=qr.query(con,sql,new MapListHandler); for(Map<String,Object> map:list){ for(String key:map.keySet()){ System.out.println(key+map.get(key)); } }

 

转载请注明原文地址: https://www.6miu.com/read-4931969.html
最新回复(0)