Я искал это некоторое время, и я также разработал что-то работающее, но мне интересно, есть ли фреймворк, который может облегчить мою жизнь.
Проблема проста, у меня есть Json InputStream, представляющий действительно большие полезные данные.
Я точно знаю, что эти полезные данные содержат массив объектов по известному пути, и я не хочу анализировать поток в памяти, вместо этого я хотел бы seek
в файле по заданному пути и извлекать все объекты вложенного массива по одному как Map<String,Object>
.
Пример:
{
"store": {
"book" : [
{
"isbn": "123",
"author": "author",
"title": "title",
},
..... many more objects
]
}
}
Мне нужно seek
на $.store.book
и извлеките отдельные вложенные объекты для дальнейшей обработки.
Я пробовал JsonPath (jayway)
, но метод синтаксического анализа, похоже, загружает все в память.
Затем я использовал Джексон с потоковой библиотекой, но решение, которое я получил, немного запутано. Есть ли более простой способ добиться этого?
Спасибо