Когда Spring отправляется для генерации аргумента для параметра @RequestBody, он циклически просматривает экземпляры HttpMessageConverter, проверяет, является ли этот экземпляр HttpMessageConverter # canRead типом содержимого, указанным в запросе, и может генерировать экземпляр типа параметра. Если это возможно, Spring будет использовать этот HttpMessageConverter для создания аргумента. Если это невозможно, Spring пропустит его и попробует следующий экземпляр, пока он не закончится. В этот момент он выдаст исключение.
-копированный
Преобразователи сообщений по умолчанию По умолчанию следующие экземпляры HttpMessageConverters предварительно включены:
- ByteArrayHttpMessageConverter - конвертирует байтовые массивы
- StringHttpMessageConverter - конвертирует строки
- ResourceHttpMessageConverter - конвертирует org.springframework.core.c * * 101 * * * * * * * * * * * * SourceHttpMessageConverter - преобразует javax. xml .transform.Source
- FormHttpMessageConverter - преобразует данные формы в
- MultiValueMap.
- Jaxb2RootElementHttpMessageConverter из XML (добавляется только если JAXB2 присутствует в пути к классам)
- MappingJackson2HttpMessageConverter - конвертирует JSON (добавляется только в том случае, если в пути к классам присутствует Джексон 2)
- MappingJacksonHttpMessageConverter - конвертирует JSON (добавляется только если Джексон присутствует на classpath)
- AtomFeedHttpMessageConverter - преобразует каналы Atom (добавляется только в том случае, если в пути к классам присутствует Рим)
- RssChannelHttpMessageConverter - преобразует каналы RSS (добавляется только в том случае, если в пути к классам присутствует Рим)