【发布时间】:2021-01-23 21:49:01
【问题描述】:
我正在尝试从 json 中获取多个 POJO,看起来像这样
{
"obj1": {
"quizowner": "testacccc",
"question": "questionB",
"answer": "6",
"directions": "directionsB",
"quizname": "quiz Name",
"subject": "subjB",
"options": "5, 7, 6",
"type": "CHECKBOX"
},
"obj0": {
"quizowner": "testacccc",
"question": "questionA",
"answer": "3",
"directions": "directionsA",
"quizname": "quiz Name",
"subject": "subjA",
"options": "1,2,3",
"type": "MULTIPLECHOICE"
}
}
我在使用 JACKSON 之前已经这样做了,但只使用了一个对象。 obj 中最多可能有 50 个,我不知道如何访问它们。
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@Path("questions")
public Response addQuiz(Question question, @Context HttpHeaders headers) {
}
如何将 JSON 映射到 Question pojo 的数组中?还是有更好的办法?
【问题讨论】:
-
JSON 代表列表/数组吗?它应该看起来像
[{"obj1":{}}, {"obj2":{}}] -
我用两个 obj 更新了它的外观。需要括号吗?我直接将 JSONObject 转换为字符串 @AlexRudenko
-
试试
public Response addQuiz(Map<String, Question> questions, @Context HttpHeaders headers)。您始终可以将JSON Object视为Map。