【发布时间】:2019-08-11 07:02:04
【问题描述】:
我在将 Map 转换为 JSON 时遇到问题。在这里,我需要根据付款类型、渠道和货币将数据格式化为嵌套的 JSON。由于数据没有排序,我不确定如何在 JAVA 中实现这一点。
输入:
{by_status=COMPLETED, by_processingDate=2019-08-08, by_paymentType=REALTIME, by_channel=A, by_currency=SGD} count: 79129
{by_status=FAILED, by_processingDate=2019-08-08, by_paymentType=REALTIME, by_channel=B, by_currency=SGD} count: 2
{by_status=FAILED, by_processingDate=2019-08-08, by_paymentType=REALTIME, by_channel=A, by_currency=SGD} count: 79
{by_status=FAILED, by_processingDate=2019-08-10, by_paymentType=REALTIME, by_channel=A, by_currency=SGD} count: 3
{by_status=FAILED, by_processingDate=2019-08-08, by_paymentType=REMITTANCE, by_channel=B, by_currency=SGD} count: 3347
{by_status=FAILED, by_processingDate=2019-08-08, by_paymentType=false, by_channel=A, by_currency=SGD} count: 3
{by_status=PENDING, by_processingDate=2019-08-08, by_paymentType=REALTIME, by_channel=B, by_currency=SGD} count: 2
{by_status=PENDING, by_processingDate=2019-08-08, by_paymentType=REALTIME, by_channel=A, by_currency=SGD} count: 15
{by_status=PENDING, by_processingDate=2019-08-08, by_paymentType=REMITTANCE, by_channel=B, by_currency=SGD} count: 11654
{by_status=PENDING, by_processingDate=2019-08-08, by_paymentType=REMITTANCE, by_channel=B, by_currency=USD} count: 7
预期输出:
[
{
"COUNTRY": "SG",
"B": {
"REMITTANCE": [
{
"CURRENCY": "SGD",
"FAILED":3347,
"PENDING": 11654
},
{
"CURRENCY": "USD",
"PENDING": 7
}
],
"REALTIME": [
{
"CURRENCY": "SGD",
"FAILED":2,
"PENDING": 2
}
]
},
"A": {
"REALTIME": [
{
"CURRENCY": "SGD",
"COMPLETED": 79129,
"FAILED": 79,
"PENDING": 15
}
]
}
}
]
【问题讨论】:
-
欢迎来到 Stack Overflow。请通过tour 了解 Stack Overflow 的工作原理,并阅读How to Ask 以了解如何提高问题的质量。然后edit你的问题包括你的完整源代码作为minimal reproducible example,其他人可以编译和测试。
-
嘿伙计,您能否编辑您的问题以包含代表该文件中数据的 POJO?谢谢。