gpt4 book ai didi

java - 如何在循环中填充 json 数组

转载 作者:行者123 更新时间:2023-12-02 00:05:43 25 4
gpt4 key购买 nike

我想从表中获取数据并使用 json 对象将该数据填充到数组中。

我已经完成了硬编码示例,该示例工作正常,但现在我想使用循环填充数据。但使用循环会导致数据重叠。意味着最后只有 1 行输出。

JSONObject items = new JSONObject();
JSONArray itemlines = new JSONArray();

Statement getLines = dbconnection.createStatement();
ResultSet LinesRS = getLines.executeQuery("SELECT
b.line_number,b.ordered_item,b.description,b.line_quantity,
"(SELECT order_quantity_uom FROM oe_order_lines_all WHERE line_id =
b.line_id) uom\n" +
"FROM rocell.xrcl_ns_int_quotation_details b WHERE b.header_id =
"+getQuotationsRS.getString(1));
while(LinesRS.next())
{
items.put("lineNo", LinesRS.getString(1));
items.put("itemCode", LinesRS.getString(2));
items.put("itemDesc", LinesRS.getString(3));
items.put("qty", LinesRS.getString(4));
items.put("unit", LinesRS.getString(22));
itemlines.put(items);
}



record.put("items", itemlines);

I want output like below

"items": [ { "lineNo": 1,
"itemCode": "IT001",
"itemDesc": "Bottle",
"qty": "3",
"unit":"EA"},
{ "lineNo": 2,
"itemCode": "IT002",
"itemDesc": "Flask",
"qty": "2",
"unit":"EA"}
]

最佳答案

JSONArray itemlines = new JSONArray();

Statement getLines = dbconnection.createStatement();
ResultSet LinesRS = getLines.executeQuery("SELECT
b.line_number,b.ordered_item,b.description,b.line_quantity,
"(SELECT order_quantity_uom FROM oe_order_lines_all WHERE line_id =
b.line_id) uom\n" +
"FROM rocell.xrcl_ns_int_quotation_details b WHERE b.header_id =
"+getQuotationsRS.getString(1));
while(LinesRS.next())
{ //every time this JSONObject items is init and put into itemlines
JSONObject items = new JSONObject();
items.put("lineNo", LinesRS.getString(1));
items.put("itemCode", LinesRS.getString(2));
items.put("itemDesc", LinesRS.getString(3));
items.put("qty", LinesRS.getString(4));
items.put("unit", LinesRS.getString(22));
itemlines.put(items);
}



record.put("items", itemlines);

关于java - 如何在循环中填充 json 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58157621/

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