Вы используете @ResponseBody
и возвращаете объект ModelClass
.То, что вам нужно здесь, это MessageConverter
.Например, вы можете использовать MappingJackson2MessageConverter , основанное на Jackson 2
внедрение MessageConverter
:
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper" ref="objectMapper"/>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
<bean id="objectMapper" class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean">
...
</bean>
ПРИМЕЧАНИЕ:
Также используйте элемент produces
аннотации @RequestMapping
в контроллере, чтобы указать типы воспроизводимых носителей отображенного запроса.Например, если вы хотите отправить ответ JSON
:
@RequestMapping(produces = MediaType.APPLICATION_JSON_VALUE, ...)
Дополнительные сведения:
1.10.7. Message Converters
из документации Spring Framework 5.1.3. RELEASE