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

教程分享 > WEB技术 > JavaScript (807) 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;
	}

}
https://www.leftso.com/article/14.html

相关文章
环境说明1.MySQL5.7(注意,json格式最低需要改版本支持);2.存json数据的数据库字段类型必须是json,不能是varchar;
MySQL,从大概5.7版本开始支持json数据类型,但是5.7的json查询不支持创建索引,在MySQL 8.0.17 后支持了索引,但是创建和查询使用索引与常规索引不同
使用Jackson写巨大的JSON文件
java json字符串转对象_json转换为java对象_ json字符串转对象数组
说明:json除了键值对的形式以外,还包括Array数列形式,这在mysql5.7及以上也是支持的,对Array中元素的操作相当于直接对键值对中的值操作,少了“键”的定位这一步,这里不单独展示,...
Java EE 8 JSON Pointer讲解,Java EE 8包含JSON处理API的更新,并为最新的JSON标准提供最新的IEFT标准。
handlerexceptionresolver 返回json
简介Spring Cloud Gateway中的全局异常处理不能直接用@ControllerAdvice来处理,通过跟踪异常信息的抛出,找到对应的源码,自定义一些处理逻辑来符合业务的需求
Form前置准备首先我们有一个表单&lt;form id="params"&gtl; &lt;input name="userName" value="123"&gtl; &lt;...
json-path 组件使用java 版 jsonpath引入依赖        &lt;dependency&gtl;            &lt;groupId&gtl;com.jay...
前言值得一提的是JSON只有数组数据类型
Log4j 2 简介       Apache Log4j 2是对Log4j 1.x的升级,相对于其先前版本进行了重大改进,例如性能改进,自动重新加载已修改的配置文件,java 8 lambda...
在vue2.0中使用了axios库,设置请求头Content-Type='application/json;charset=UTF-8'无效axios.defaults.headers.comm...
httpclient4.5使用详解 httpclient 4.5 post传递json参数