gpt4 book ai didi

java - 从 ResultSet 返回 JSONArray 或 JSONObject

转载 作者:行者123 更新时间:2023-12-02 11:09:22 24 4
gpt4 key购买 nike

我有以下方法...

我正在尝试验证 Oracle DB 中的结果。结果不是我所期望的,但我似乎无法弄清楚如何在不做 map 或列表/ map 的情况下使其正确。

public static JSONArray verifyDRFromButton(String transactionId) {
JSONArray jsonArray = new JSONArray();
try {
ResultSet resultSet;
Constants.threadSleep(5000);
Constants.verifyOracle();
String databaseConnectionString = String.format("jdbc:oracle:thin:@%s:%s:%s", "*****", "****", "*****");

Connection conn = DriverManager.getConnection(databaseConnectionString,"*****","*****");
Statement stmt = conn.createStatement();
resultSet = stmt.executeQuery("SELECT * from ****** WHERE ***** = '" + transactionId + "'");
//Print DB Table
Constants.threadSleep(500);
//DBTablePrinter.printResultSet(rs);
//result = rs.toString();
while (resultSet.next()) {
int totalRows = resultSet.getMetaData().getColumnCount();
for (int i = 0; i < totalRows; i++) {
JSONObject obj = new JSONObject();
obj.put(resultSet.getMetaData().getColumnLabel(i + 1)
.toLowerCase(), resultSet.getObject(i + 1));
jsonArray.put(obj);
}
}
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return jsonArray;
}

结果看起来像这样......

[
{"id": "idvalue"},
{"id2": "id2value"},
{"name": "namevalue"},
{"name2": "name2value"}
]

我希望是这样。

[
{"id": "idvalue", "id2": "id2value"},
{"name": "namevalue", "name2": "name2value"}
]

最佳答案

移动此行

JSONObject obj = new JSONObject()

在 for 循环和这一行之前

jsonArray.put(obj);

for循环之后如果您没有获得预期结果,请分享您的结果

关于java - 从 ResultSet 返回 JSONArray 或 JSONObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50708283/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com