2016-03-26 3 views
0

Я хочу разработать один веб-api, который будет производить и потреблять как JSON и XML данные.Разница между jersey-media-json-jackson, jersey-json, jersey-media-multipart?

Я использовал JAXB для XML поддержки и он работает нормально. Теперь я хочу, чтобы добавить JSON type.i изучил другие обучающий, все используют различную зависимость, как показано ниже:

  1. Джерси-медиа-JSON-джексон
  2. Джерси-
  3. JSON
  4. джерси-медиа-многочастному

, пожалуйста, помогите мне, кто идеален и поддерживает как XML, так и JSON. В чем разница между ними?

+0

проверить этот ответ. –

ответ

2

1. Джерси-Медиа-Джексон JSON-

процессор Джексон JSON можно контролировать с помощью предоставления экземпляра custom Jackson 2ObjectMapper (или ObjectMapper для Jackson 1). Это может быть удобно, если вам нужно переопределить поведение Джексона по умолчанию и точно настроить, как выглядят структуры данных JSON. Подробное описание всех функций Jackson выходит за рамки настоящего руководства. Пример ниже дает вам подсказку о том, как подключить ваш экземпляр ObjectMapper (ObjectMapper) к вашему заявлению на Джерси.

Для того, чтобы использовать Джексона в качестве поставщика JSON (JAXB/POJO) вам нужно зарегистрироваться JacksonFeature (Jackson1Feature) и ContextResolver<T> для ObjectMapper,

2.-Джерси Json:

поддержка

Джерси JSON поставляется в набор из JAX-RS MessageBodyReader<T> и MessageBodyWriter<T> поставщиков, распространяемых с модулем jersey-json. Эти провайдеры позволяют использовать три основных подхода при работе с форматом JSON:

POJO support 

JAXB based JSON support 

Low-level, JSONObject/JSONArray based JSON support 

3. Джерси-медиа-многочастному

Мультисекционные в этом модуле обеспечивает интеграцию multipart/* запрос и ответ органов в JAX-RS runtime environment , Набор зарегистрированных провайдеров задействован в том, что тип контента для основной части такого сообщения повторяет те же самые реализации MessageBodyReader<T>/MessageBodyWriter<T>, что и для этого типа контента в качестве автономного объекта.

Следующие list of general MIME MultiPart особенности в настоящее время поддерживается:

  • мим-версии: заголовок HTTP 1.0 включен в генерируемых ответов. Принимается, но не требуется, на обработанные запросы.

  • Реализация MessageBodyReader для использования MIME MultiPart объектов.

  • Реализация MessageBodyWriter для создания MIME MultiPart объектов. Соответствующий @Provider используется для сериализации каждого элемента тела на основе его типа носителя.

  • Дополнительное создание соответствующего граничного параметра в сгенерированном заголовке Content-Type, если он еще не присутствует.

Смежные вопросы