Я пытаюсь сопоставить мою входящую json полезную нагрузку с массивом данных моего модельного класса. У меня есть решение, но оно не интуитивно понятно. Я пытаюсь сделать это, но получаю ошибки компиляции -
ObjectMapper mapper = new ObjectMapper();
ArrayList<ModelClass> = mapper.readValue(items, RoleAttribute.class);
К вашему сведению Я пытаюсь сохранить эти данные в коллекции Mon go.
Controller-
@PostMapping(value="/resource", consumes="application/json")
public Iterable<ModeClass> createResources(@RequestBody JSONObject requestBody ) throws JsonParseException, JsonMappingException, IOException {
System.out.println(requestBody.getClass());
return serviceImpl.saveResources(requestBody);
}
Модель класса-
@Data
@AllArgsConstructor
@Document(collection="collection-name")
public
class ModelClass{
@Field
private String ID;
@Field
private String description;
}
Полезная нагрузка поступает в следующем формате -
{
"data": [
{
"ID": "1",
"description": "desc1"
},
{
"ID": "2",
"description": "desc2"
},
{
"ID": "3",
"description": "desc3"
},
{
"ID": "4",
"description": "desc4"
}
....
]
}
Я знаю, что должен использовать Джексона, но не могу понять это. Нужно ли менять мой POJO? Нужно ли создавать пользовательский конфиг Джексона?