如何把从数据库中查询出的结果保存为List<Map>

看到好多人问如何把从数据库中查询出的结果保存为List<Map>

今天研究了一下,如果有说的不对的请给予指正。

ResultSet 是如何获得的在这就不再阐述了,网上一搜一堆。


当我们获得ResultSet rs 时可以转化为ResultSetMetaData对象。
ResultSetMetaData可用于获取关于 ResultSet 对象中列的类型和属性信息的对象。
看下边例子
//获得ResultSetMetaData对象
ResultSetMetaData rsmd=rs.getMetaData();
//获得返回此 ResultSet 对象中的列数
int count = rsmd.getColumnCount();
while(rs.next()){
Map map=new HashMap();
for(int i=1;i<count;i++){
//获取指定列的表目录名称
String label=rsmd.getColumnLabel(i);
//以 Java 编程语言中 Object 的形式获取此 ResultSet 对象的当前行中指定列的值
Object object= rs.getObject(i);
//把数据库中的字段名和值对应为一个map对象中的一个键值对
map.put(label.toLowerCase(), object);
}
把每条对象封装成的map对象放进list中
list.add(map);
}

就此就可以把任意resultet通过这个方法生成list对象 而不用去考虑如何和数据库中的字段对应了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值