JSON "плоская" сериализация с Java - PullRequest
2 голосов
/ 15 октября 2010

Я ищу библиотеку JSON, которая поддерживает определение глубины сериализации.В идеале мне нужна библиотека, которая обрабатывает все примитивные типы и java.lang, а остальное будет отправлено в пользовательский обработчик.В моем случае пользовательский обработчик должен сгенерировать объект Link с URL и классом элемента (для моего REST API).

Вот пример:

Person : String name,  Car car

Будет сериализовано в

{
“name”:”Peter”, 
Link : {“class”:”my.company.Car”, “url”:”http://www.mycompany/myapp/Car/5”}
}

Есть идеи, какую библиотеку я мог бы использовать (и улучшить)?С уважением,

Даниил

Ответы [ 4 ]

1 голос
/ 15 октября 2010
0 голосов
/ 30 октября 2010

Я не уверен, хотите ли вы фактический контроль глубины сериализации (как уже упоминалось) или нет - ваше объяснение скорее предполагает, что вы хотите иметь возможность добавлять собственные сериализаторы. Теперь: если вам действительно нужны ограничения (например, только поверхностное копирование), вы можете проверить FlexJson , который предположительно имеет явный контроль над глубиной сериализации.

В противном случае, Джексон и GSON по крайней мере имеют полную сериализацию bean-компонентов, а также разрешают пользовательские сериализаторы.

0 голосов
/ 15 октября 2010

Если GSON не соответствует вашим потребностям, я рекомендую JsonMarshaller .Он легко настраивается и настраивается, но при этом стремится быть простым.Он также имеет очень активное сообщество пользователей и разработчиков.

0 голосов
/ 15 октября 2010

Вы хотите взглянуть на Джексона .

Как вы можете видеть, вы можете использовать простые и сложные правила привязки данных, и есть потоковый API, который позволит вам ограничить глубину исследования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...