【发布时间】:2019-03-21 17:13:53
【问题描述】:
我正在使用 Java 构建 JSON 对象并希望将它们发送到 JSON 数组中,因为我的数据库中的数据未排序。我无法将数据映射为正确的格式。我觉得我缺乏逻辑。
下面是我的数据库表的图像,它在 MySQL 中:
我要为这个表创建一个 JSON 格式,如下所示:
[
{
"1": "450",
"2": "495",
"OUTLET": "TOTTAL2",
"BILLDATE": "",
"TOTAL": "945"
},
{
"1": "10",
"2": "15",
"OUTLET": "Ol1",
"BILLDATE": "08-21-2018",
"TOTAL": "25"
},
{
"1": "20",
"2": "25",
"OUTLET": "ol1",
"BILLDATE": "08-22-2018",
"TOTAL": "45"
},
{
"1": "30",
"2": "35",
"OUTLET": "ol1",
"BILLDATE": "08-23-2018",
"TOTAL": "65"
},
{
"1": "40",
"2": "45",
"OUTLET": "ol2",
"BILLDATE": "08-21-2018",
"TOTAL": "85"
},
{
"1": "50",
"2": "55",
"OUTLET": "ol2",
"BILLDATE": "08-22-18",
"TOTAL": "105"
},
{
"1": "60",
"2": "65",
"OUTLET": "ol2",
"BILLDATE": "08-23-2018",
"TOTAL": "125"
},
{
"1": "70",
"2": "75",
"OUTLET": "ol3",
"BILLDATE": "08-21-2018",
"TOTAL": "145"
},
{
"1": "80",
"2": "85",
"OUTLET": "ol3",
"BILLDATE": "08-22-2018",
"TOTAL": "165"
},
{
"1": "90",
"2": "95",
"OUTLET": "ol3",
"BILLDATE": "08-23-201818",
"TOTAL": "185"
}
]
上面的 JSON 是我想要的输出。但我无法在循环中映射数据,或者我没有得到逻辑。我只是想为html表创建一个JSON格式我还提供了我想要的json。
我落后的地方是编码和思考如何循环数据以获得所需格式的逻辑:
这是我要制作的表格
我知道在 java 中使用 GSON 来解析 json(在 Java 中发送 json),所以我可以做到这一点,我唯一想要的就是喜欢如何编写代码。
这是我获取第一个标头的 Java 代码
String TotalAmountWithDateSql = "quwry1";
// System.out.println("TotalAmountWithDateSql"+TotalAmountWithDateSql);
String GrandTotalSql = "query2";
// System.out.println("grandTotal"+GrandTotalSql);
try {
con = DBConnection.createConnection();
statement = con.createStatement();
ResultSet resultSet = statement.executeQuery(GrandTotalSql);
while (resultSet.next()) {
map.put("OUTLET/HOURS", " ALL");
GrandTotal = resultSet.getLong("TOTAL");
map.put("TOTAL", GrandTotal);
resultSet = statement.executeQuery(TotalAmountWithDateSql);
while (resultSet.next())
{
BillTime = resultSet.getString("TIME");
NetAmtWithTime = resultSet.getLong("AMOUNT");
map.put(BillTime, NetAmtWithTime);
}
list.add(map);
str = gson.toJson(list);
}
System.out.println("value " + str);
response.setContentType("application/json");
response.getWriter().write(str);
从我得到的这个 Java 代码
现在我想像我上传的 JSON 一样调用下面的数据,但这只是给了我第一个标题:
【问题讨论】:
-
I downvoted because no attempt was made,例如编写
SELECT语句,使用 JDBC、JPA 或其他方式检索数据,将数据操作为所需的形式,从一些内存数据结构生成 JSON。简而言之,就目前的问题而言,它太宽泛了。 -
@Andreas 我正在使用来自一个查询的哈希映射我正在调用网点并将它们存储到列表中并在第一个查询的大小上运行下一个查询以获取日期但我无法循环将它们放入 {}。
-
不要试图在评论中用文字解释。 编辑问题,在那里解释并显示你拥有的代码并解释具体你卡在哪里。