У меня есть строка JSON, сгенерированная с использованием библиотеки Json.Net C # со следующими настройками:
JsonConvert.DefaultSettings = () => new JsonSerializerSettings
{
Formatting = Newtonsoft.Json.Formatting.Indented,
ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore,
PreserveReferencesHandling = PreserveReferencesHandling.All
};
Обратите внимание на PreserveReferencesHandling, чтобы ссылки, генерируемые в json, вместо того же объекта копировались (дублировались) на каждый объектссылка.
Как я могу десериализовать результат в Java?Библиотеке Google Gson не удается выполнить синтаксический анализ.
ОБНОВЛЕНИЕ: ошибка, на мой взгляд, не может сильно помочь: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Ожидаемый BEGIN_ARRAY, но был BEGIN_OBJECT в строке 1 столбца 154944path $ .Tables [0] .Columns [4] .ForeignKeyTable.ForeignKeyChildren 1 .Columns [0] .ForeignKeyTable.Indexes
Я положу небольшой фрагмент данных json,обратите внимание на $ id, $ ref: JSON с форматом ссылок