Я хотел знать, возможно ли использовать ObjectMapper из Jackson , чтобы читать события один за один. Я не хочу загружать полные события JSON в мою память, а не то, что я хочу обрабатывать события один за другим. Следовательно, я использую библиотеку Java Jackson , которая может пройти через файл JSON и получать одно событие JSON за раз, которое я могу затем преобразовать в XML. Таким образом, в то время только одно событие будет загружено в память. ObjectMapper класс из Jackson , который может напрямую отобразить каждое событие с соответствующим классом Java, который позже я могу использовать для преобразования в соответствующий XML, используя метод Marshalling .
Я не понимаю, как прочитать событие One-by-one, используя ObjectMapper и назначить его соответствующему классу. Версия моего файла JSON: (это образец JSON My Original JSON намного сложный) < /p>
{
"@context":"https://context.org/context.jsonld",
"isA":"SchoolManagement",
"format":"application/ld+json",
"schemaVersion":"2.0",
"creationDate":"2021-04-21T10:10:09+00:00",
"body":{
"members":[
{
"isA":"student",
"name":"ABCS",
"class":10,
"coaching":[
"XSJSJ",
"IIIRIRI"
],
"dob":"1995-04-21T10:10:09+00:00"
},
{
"isA":"teacher",
"name":"ABCS",
"department":"computer science",
"school":{
"name":"ABCD School"
},
"dob":"1995-04-21T10:10:09+00:00"
},
{
"isA":"boardMember",
"name":"ABCS",
"board":"schoolboard",
"dob":"1995-04-21T10:10:09+00:00"
}
]
}
}
< /code>
Я хочу прочитать событие в массиве «Участники» один за другим и проверить, является ли оно "учеником", «Учитель» и т. Д., А затем назначить его соответствующему классу. < /p>
public class Main {
public static void main(String[] args) throws JsonParseException,
JsonMappingException,
IOException,
JAXBException {
final ObjectMapper objectMapper = new ObjectMapper();
// Accept the Null values for some fields
objectMapper.setSerializationInclusion(Include.NON_NULL);
// If any unknown properties found then do not fail
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
//Here I want to read the element within an array
Student event = objectMapper.readValue(Main.class.getResourceAsStream("/events.json"), Student.class);
System.out.println(event);
}
}
Подробнее здесь: https://stackoverflow.com/questions/671 ... -from-json
Есть ли способ использовать Jackson ObjectMapper, чтобы прочитать объект из JSON One One One ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как использовать Jackson ObjectMapper внутри специального десериализатора?
Anonymous » » в форуме JAVA - 0 Ответы
- 15 Просмотры
-
Последнее сообщение Anonymous
-