jdbc数据库查询结果集直接赋值给JSON/JSONArray

教程分享 > WEB技术 > JavaScript > 博文分享 (952) 2024-08-07 11:21:12
 jdbc数据库查询结果集直接赋值给JSON/JSONArray
package org.xqlee.utils.other;

import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

/**
 * 
 * 
 * <pre>
 * _________________________INFO_____________________________
 * | Description : [jdbc的result转换为jsonarray对象] 
 * | Encoding    : [UTF-8]
 * | Package     : [org.xqlee.utils.other]
 * | Project     : [utils]
 * | Author      : [LXQ]
 * | CreateDate  : [2016年5月6日下午4:30:33]
 * | Updater     : []
 * | UpdateDate  : []
 * | UpdateRemark: []
 * | Company     : [Shallink Electronic Information]
 * | Version     : [v 1.0]
 * | Libs        : []
 * __________________________________________________________
 * </pre>
 */
public class JDBC2JSONArray {
	/**
	 * 将数据库查询的resultset结果集转换为JSONArray数组对象 <BR/>
	 * [注意:所有JSONObject对象的key中字母均为大写]
	 * 
	 * @param resultSet
	 *            数据库查询结果集
	 * @return JSONArray数组
	 * @throws SQLException
	 *             异常
	 */
	public static JSONArray result2JSONArray(ResultSet resultSet) throws SQLException {
		// 1.get columns
		ResultSetMetaData rsmd = resultSet.getMetaData();
		//
		JSONArray arr = new JSONArray();
		JSONObject obj = null;
		while (resultSet.next()) {
			obj = new JSONObject();
			for (int i = 1; i <= rsmd.getColumnCount(); i++) {
				// 获取指定列名称
				// String columnName = rsmd.getColumnName(i);
				// 获取sql指定的标签别名
				String columnLabelName = rsmd.getColumnLabel(i);
				// 获取指定列之
				Object columnValue = resultSet.getObject(i);
				// 赋值
				obj.put(columnLabelName.toUpperCase(), columnValue);
			}
			// add to set
			arr.add(obj);
		}
		return arr;
	}

}

相关文章
环境说明1.MySQL5.7(注意,json格式最低需要改版本支持);2.存json数据的数据库字段类型必须是json,不能是varchar;
MySQL,从大概5.7版本开始支持json数据类型,但是5.7的json查询不支持创建索引,在MySQL 8.0.17 后支持了索引,但是创建和查询使用索引与常规索引不同
JDBC 批处理查询/新增/修改的使用。虽然在一般的编码中不会直接使用jdbc的批处理,但是作为了解记录下来。
Java 数据库连接 (JDBC)是标准应用程序编程接口 (API) 的 JavaSoft 规范,它允许 Java 程序访问数据库管理系统
java json字符串转对象_json转换为java对象_ json字符串转对象数组
MySQL查询结果添加序号常规查询结果如下:SQL命令:SELECT * FROM test;​现在我们需要添加一行序列号,也就是1,2,3,4...那种
1 Mysql   union  语法 mysql   union 用于把来自多个select  语句的结果组合到一个结果集合中。语法为:   select column,......f...
说明:json除了键值对的形式以外,还包括Array数列形式,这在mysql5.7及以上也是支持的,对Array中元素的操作相当于直接对键值对中的值操作,少了“键”的定位这一步,这里不单独展示,...
前言本文主要讲解在Vert.x环境下与Mysql数据库连接和操作,实现基础的增删改查和事务,以及REST接口返回数据库中查询结果。项目引用之前的《Vert.x
使用Jackson写巨大的JSON文件
本文说一下在thymeleaf模板引擎中,如何给 textarea 赋值
FastDFS集群配置(三)
一、如何使用navicat premium 导出查询结果到excel 执行sql,然后在工具栏找到“导出结果”按钮,如下图所示: