Spring предусматривает поддержку библиотеки Jackson JSON.
Представления MVC в формате JSON на основе библиотеки Jackson
MappingJackson2JsonView
использует ObjectMapper
библиотеки Jackson для отображения содержимого ответа в формате JSON. По умолчанию все содержимое Map модели (за исключением специфичных для фреймворка классов) кодируется в формате JSON. В случаях, если содержимое Map необходимо отфильтровать, можно задать определенный набор атрибутов модели для кодирования с помощью свойства modelKeys
. Также можно использовать свойство extractValueFromSingleKeyModel
, чтобы значение в моделях с единственным ключом извлекалось и сериализовалось напрямую, а не как Map атрибутов модели
Можно настроить отображение JSON по своему усмотрению, используя аннотации, предоставляемые Jackson. Если вам нужен дополнительный контроль, то можете внедрить пользовательский ObjectMapper
через свойство ObjectMapper
для случаев, когда требуется указать пользовательские сериализаторы и десериализаторы JSON для определенных типов.
Представления XML на основе библиотеки Jackson
MappingJackson2XmlView
использует XmlMapper XML-расширения библиотеки Jackson для отображения содержимого ответа в виде XML. Если модель содержит несколько записей, необходимо явно задать объект для сериализации с помощью свойства бина modelKey
. Если модель содержит одну запись, она сериализуется автоматически.
Вы можете настроить отображение XML по своему усмотрению, используя JAXB или аннотации, предоставляемые Jackson. Если вам нужен дополнительный контроль, то можете внедрить пользовательский XmlMapper
через свойство ObjectMapper
в случаях, если кастомному XML нужно обеспечить сериализаторы и десериализаторы для определенных типов.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ