毕设之Handler

String sql ="select * from goods ";
Object[] res = r.query(sql, new ArrayHandler());
for(Object o : res){
    System.out.println(o);
}

ArrayHandler:得到了结果集中的第一条记录,封装成一个数组。

String sql ="select * from goods ";
List<Object[]> list = r.query(sql, new ArrayListHandler());
for(Object[] objs: list){
    for(Object o: objs){
    System.out.print(o+" ");
    }
    System.out.println();
}

ArrayListHandler:得到了结果集中的所有记录。1 冰雪之恋  ...

                                                                             2  安慕希 ...

这两个方法最后得到的都属于数组,但是只是罗列出来数据,不方便去处理数据得到某个数据。

需要创建一个对应的Java类,然后组装成一个Java类对应的对象,利用对象处理。

利用toString方法组拼成一个字符串

String sql ="select * from goods ";
Goods goods = r.query(sql, new BeanHandler<Goods>(Goods.class));
System.out.println(goods);

BeanHandler:得到Goods[...](第一条完整记录)。

String sql ="select * from goods ";
List<Goods> list = r.query(sql, new BeanListHandler<Goods>(Goods.class));
for(Goods g: list){
    
    System.out.println(g);
}

BeanListHandler:Goods[...]

                            Goods[...]

                             ...

String sql ="select * from goods ";
List<Object> list = r.query(sql, new ColumnListHandler<Object>("name"));
for(Object o: list){

    System.out.println(o);
}

ColumnListHandler:得到name这一列所有数据。

String sql ="select count(*) from goods ";
long count = r.query(sql, new ScalarHandler<Long>());
System.out.println(count);

ScalarHandler:返回总记录数。

String sql ="select * from goods ";
Map<String, Object> map = r.query(sql, new MapHandler());
for(String key: map.keySet()){
  
    System.out.println(key+" "+map.get(key));
   
}

MapHandler:得到结果集第一条记录(通过键),格式为 id 1

                                                                                            name 冰雪之恋

String sql ="select * from goods ";
List<Map<String, Object>> map = r.query(sql, new MapListHandler());
for(Map<String, Object> map: list){
    for(String key: map.keySet()){
  
    System.out.print(key+" "+map.get(key)+" ");
   
    }
    System.out.println();
}

MapListHandler:得到全部数据,格式为id 1 name 冰雪之恋

                                                               id 2 name 安慕希

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值