#java #json #gson #jsonschema
#java #json #gson #jsonschema
Вопрос:
Мне нужна помощь. У меня есть 2 json. Json имеют структуру, подобную следующим продуктам: [ { Productcode:alpha, Функции: [{ FunctionCode:beta, Ресурсы: [ {Res1}, {Res2}] }]}]
Теперь у меня есть условия, я хочу сравнить их на уровне ресурсов и посмотреть, присутствует ли ресурс только в json 2, его добавление, если ресурс только в json 1, его удаление, и если ресурсы существуют в обоих местах, тогда это модификация. Мне также нужно сделать следующее, если у функций нет ресурсов, тогда мне нужно отправить действие как добавить, иначе как изменить, и то же самое, если для узла продукта на основе, если он уже присутствует или нет.
Короче говоря, я должен сравнить два json и отправить их дельты в другую систему с атрибутом action для всех них. Может кто-нибудь, пожалуйста, подскажите мне, как подойти к этому?
Редактировать: Вещи, которые я пробовал до сих пор:. Я использую java. Я пытался использовать jsonpatch и gson, но результаты — это не то, что я ищу, поскольку они говорят мне о разнице, но мне нужно добавить некоторую логику, основанную на наличии ресурсов в левом и правом файлах json. Кроме того, мне нужно убедиться, что продукт отправляет ADD как действие в случае отсутствия дочерний узел и так же обстоит дело с functioncode
Комментарии:
1. Используя какой язык? И что вы пробовали до сих пор?
2. Я использую java. Я пытался использовать jsonpatch и gson, но результаты — это не то, что я ищу, поскольку они говорят мне о разнице, но мне нужно добавить некоторую логику, основанную на наличии ресурсов в файлах left и right json. Кроме того, мне нужно убедиться, что продукт отправляет ADD как действие в случае отсутствиядочерний узел и так же обстоит дело с functioncode
3. Пожалуйста, пометьте вопрос всеми соответствующими технологиями, а также покажите, что вы пробовали, на случай, если это можно исправить или расширить
4. Если вы заранее знаете структуру 2 json, вы можете использовать GSON, чтобы превратить их в объекты Java, затем использовать логику для их сравнения и вывода json в результате.