У меня есть множество текстовых файлов, содержащих json-данные, и я использую новый метод ObjectMapper(). ReadTree() в парсере Jackson json для анализа данных json для деревьев DOM.Jackson json: перемещение узла дерева json по узлу
Скажем, теперь у меня теперь есть два дерева DOM - t1 и t2. Каждое дерево будет иметь множество дочерних узлов, которые, в свою очередь, будут иметь множество дочерних узлов.
Что бы я хотел сделать, это пересечь узел дерева t1 по узлу и сравнить каждый узел в t1 с каждым узлом в t2. Я знаю, что парсер Jackson json позволяет мне запрашивать определенные узлы, но как мне пройти через весь узел дерева по узлу?
my json doc глубоко вложен. Но я собираюсь попробовать функцию, которую вы указали выше, и внести изменения по своему усмотрению. У вас есть какие-либо предложения/улучшения, которые могут быть сделаны (если документ глубоко вложен) Спасибо – athreya86
JsonNode уже выполняет equals(), поэтому пример кода немного лишний ... – StaxMan
Вы должны быть в порядке, если ваша глубина гнездования не будет тысячи. В этом случае у вас могут возникнуть проблемы с размером стека VM, однако я подозреваю, что вы столкнулись с теми же проблемами с TreeMapper. Если вы это сделаете, вы можете использовать нерекурсивную реализацию, но они немного более подробные. См. [This] (http://stackoverflow.com/questions/1294701/post-order-traversal-of-binary-tree-without-recursion), чтобы начать работу. – gbegley