/**
* 查询到多条数据, 封装到List<Map>
*/
public List<Map<String, Object>> queryForMapList(String sql, Object... args) throws SQLException {
PreparedStatement statement = getStatement(sql, args);
// 执行SQL语句, 获取结果集
ResultSet resultSet = statement.executeQuery();

// 获取结果集中的元数据
ResultSetMetaData metaData = resultSet.getMetaData();
// 字段的个数
int count = metaData.getColumnCount();
// 创建List集合
List<Map<String, Object>> list = new ArrayList<>();

// 处理结果集
while (resultSet.next()) {
// 创建Map集合
Map<String, Object> map = new HashMap<>();
// 根据字段的个数, 循环
for (int i = 0; i < count; i++) {
// 获取字段的名字
String columnName = metaData.getColumnName(i + 1);
// 获取字段对应的值
Object object = resultSet.getObject(columnName);
// 将字段名和字段值, 存入map集合中
map.put(columnName, object);
}

// 将map集合添加到List集合中
list.add(map);
}

// 释放资源
JDBCUtils.close(resultSet, statement, connection);

return list;
}

例图

获取Java数据库中结果集的每个字段名和个数的更多相关文章

  1. 从数据库中取出的数据,字段名为gb2312的 数据转码为utf8

    $pj = Pj::find()->where($map)->asArray()->one(); if(!empty($pj)) { foreach ($pj as $k=>$ ...

  2. 获取sqlserver数据库中所有库、表、字段名的方法

    获取sqlserver数据库中所有库.表.字段名的方法 2009年03月12日 星期四 下午 12:51 1.获取所有数据库名: SELECT Name FROM Master..SysDatabas ...

  3. 获取Java VM中当前运行的所有线程

    /** * 获取Java VM中当前运行的所有线程 * @return */ public static Thread[] findAllThreads() { ThreadGroup group = ...

  4. C#获取Access数据库中的所有表名和列名

    //C#获取Access数据库中的所有表名和列名    string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" ...

  5. SqlServer中获取所有数据库,所有表,所有字段

    原文:SqlServer中获取所有数据库,所有表,所有字段 一.获取所有数据库 select * from master.dbo.SysDatabases 二.获取某个库中所有表 SELECT * F ...

  6. SQL查询数据库中所有指定类型的字段名称和所在的表名

    --查询数据库中所有指定类型的字段名称和所在的表名 --eg: 下面查的是当前数据库中 所有字段类型为 nvarchar(max) 的字段名和表名 SELECT cols.object_id , co ...

  7. eImage(仅两行代码实现输出从数据库中查询到的二进制字段)标签

    功能: 专门用于向浏览器输出从数据库中查询到的二进制字段.支持通用的几十种文件类型 别名为edoc 使用方法: <chtml><eimage id=书包名type=类型>key ...

  8. mysql和postgresql查询数据库中哪些表包含某个字段

    想知道数据库中哪表含有edu_status字段   mysql> select table_name,column_name from information_schema.columns wh ...

  9. Mybatis系列(二):优化MyBatis配置文件中的配置和解决字段名与实体类属性名不相同的冲突

    原文链接:http://www.cnblogs.com/xdp-gacl/p/4264301.html     http://www.cnblogs.com/xdp-gacl/p/4264425.ht ...

随机推荐

  1. 【基础概念】匹夫细说C#:不是“栈类型”的值类型,从生命周期聊存储位置

    转载地址 https://www.cnblogs.com/murongxiaopifu/p/4419040.html 0x00 前言: 匹夫在日常和别人交流的时候,常常会发现一旦讨论涉及到" ...

  2. bool 类型位逻辑运算符(| & ^)与条件逻辑运算符(|| &&)的区别

    bool 类型的运算符 & ^|   &&  ||   ! 运算符&&和|| 是短路的,这意味着如果左侧表达式的值足以确定结果,则它们将不会评估其右侧表达式. ...

  3. Map格式-joson格式

    mapStr: {CHAR=UTF-8, DATA=eyJNRVJDSEFOVCI6IjEwMDEiLCJWRVJTSU9OIjoiMS4wLjAiLCJUUkFERSI6IjIwMTgwNjEyMT ...

  4. JavaWeb后端

    JavaWeb后端 我们学习JavaWeb的最终目的是为了搭建一个网站,并且让用户能访问我们的网站并在我们的网站上做一些事情. 计算机网络基础 在计算机网络(谢希仁 第七版 第264页)中,是这样描述 ...

  5. jq给手机号加密

    效果: HTML代码:     <!-- 1手机绑定 -->     <div class="memberuser_box">         <di ...

  6. matplotlib.lines.Line2D at 0x328fc10 解决方法

    在plt.plot(Y,X)代码前加一句plt.figure()即可

  7. lsof、tcpdump和wireshark

    lsof:https://www.jianshu.com/p/a3aa6b01b2e1 tcpdump:https://linux.cn/article-10191-1.html wireshark: ...

  8. c/c++ 日常积累

    基类是抽象类,有(纯)虚函数,子类必须要把所有的都实现啊啊啊!!!!包括子类的析构,你写一个~xx类 = default;也好啊啊啊啊啊啊啊,不然报错!!!!啊啊啊啊啊 流下了悔恨的泪水!!!... ...

  9. mataplotlib篇(开篇)

    今日内容概要 matplotlib画各种图形 数据操作补充 数据清洗 网络爬虫 今日内容详细 matplotlib画各种图形 # 首先导入模块 import numpy as np import pa ...

  10. VMware虚拟机三种网络模式

    VMware三种网络模式 在学习中经常遇到Vmware虚拟机网络设置有问题,可能是因为你没有理解这三种网络模式的工作原理.VMware虚拟机常见的网络类型有bridged(桥接).NAT(地址转换). ...