【发布时间】:2021-10-22 11:45:11
【问题描述】:
我正在为我真正喜欢的游戏创建一个 API 作为个人项目。我试图弄清楚如何用每个成员的特定值封装 JSON 列表的每个成员。
例如,我的回复是这样的:
[
[
{
"createdAt": "2021-08-21T05:04:45.000+00:00",
"updatedAt": "2021-08-21T05:04:45.000+00:00",
"id": 1,
"cardName": "Demon Fiend",
...
},
{
"createdAt": "2021-08-21T05:04:58.000+00:00",
"updatedAt": "2021-08-21T05:04:58.000+00:00",
"id": 2,
"cardName": "Stack",
...
},
{
"createdAt": "2021-08-21T05:05:00.000+00:00",
"updatedAt": "2021-08-21T05:05:00.000+00:00",
"id": 3,
"cardName": "Overflow",
...
}
]
]
而且,理想的响应是通过他们的 cardName 或 id 来索引它们,如下所示:
[
[
"Demon Fiend" : {
"createdAt": "2021-08-21T05:04:45.000+00:00",
"updatedAt": "2021-08-21T05:04:45.000+00:00",
"id": 1,
"cardName": "Demon Fiend",
...
},
"Stack" : {
"createdAt": "2021-08-21T05:04:58.000+00:00",
"updatedAt": "2021-08-21T05:04:58.000+00:00",
"id": 2,
"cardName": "Stack",
...
},
"Overflow" : {
"createdAt": "2021-08-21T05:05:00.000+00:00",
"updatedAt": "2021-08-21T05:05:00.000+00:00",
"id": 3,
"cardName": "Overflow",
...
}
]
]
我认为这将使用户更容易遍历数据。再说一次,“恶魔”可能只是1 : { ... }
【问题讨论】:
-
如果你想在 MySQL 中进行转换,你可以使用
JSON_OBJECTAGG和JSON_OBJECT -
你可以创建
Map<Integer, UserData> memberIdMap的地图
标签: java json spring-boot rest