Как снова использовать JSON/JAXB Джерси для сериализации?

Если вы используете окна, попробуйте использовать CTRL, SHIFT, +, а для уменьшения размера шрифта вы можете использовать CTRL, SHIFT, -

28
задан ctwomey 10 July 2009 в 18:57
поделиться

4 ответа

В Джерси используется пара различных фреймворков в зависимости от того, используете ли вы нотацию mapped (), badgerfish () или natural (). Обычно люди хотят естественного. И это реализовано с использованием очень хорошего (и очень быстрого) автономного процессора Jackson JSON, я считаю, который идет от Object-> JAXB-> JSON. Однако Джексон также предоставляет своего собственного поставщика JAX-RS для прямого перехода к Object-> JSON.

Фактически, они даже добавили поддержку аннотаций JAXB. Взгляните на

http://wiki.fasterxml.com/JacksonJAXBAnnotations

Я думаю, что в конечном итоге это то, что вы ищете. Джексон выполняет обработку Object <-> JSON ... Джерси просто звонит за вас

19
ответ дан 28 November 2019 в 03:39
поделиться

Поскольку Джерси является эталонной реализацией JAX-RS, а JAX-RS полностью сосредоточен на предоставлении стандартного способа реализации конечной точки для службы REST, остается проблема сериализации полезной нагрузки по другим стандартам.

Я думаю, что если бы они включили сериализацию объектов в стандарт JAX-RS, это быстро превратилось бы в большого многоголового зверя, которого было бы трудно реализовать, и потеряло бы часть его внимания.

Я ценю, насколько сосредоточен Джерси на этом. предоставление чистых и простых в использовании конечных точек REST. В моем случае я только что создал подклассы родительского элемента, в котором есть все соединения JAXB, поэтому маршалинг объектов между двоичным кодом и XML очень чистый.

1
ответ дан 28 November 2019 в 03:39
поделиться

Я понимаю представления XML, но потребовалось бы предусмотреть поддержку JSON для POJO в качестве стандартного оборудования. Необходимость обрабатывать идентификаторы JSON специальными символами не имеет смысла, если ваша реализация - JSON, а ваш клиент - JavaScript RIA.

Кроме того, не то, что Java Beans НЕ являются POJO. Я хотел бы использовать что-то вроде этого на внешней поверхности моего веб-уровня:

public class Model
{
   @Property height;
   @Property weight;
   @Property age;
}

Никакого конструктора по умолчанию, никакого шума геттеров / сеттеров, только POJO с моими собственными аннотациями.

0
ответ дан 28 November 2019 в 03:39
поделиться

Вот простой краткий пример использования JAXB для сопоставления объектов с JSON (с использованием Джексона):

http://ondra.zizka.cz/stranky/programovani/java/jaxb -json-jackson-howto.texy

6
ответ дан 28 November 2019 в 03:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: