Использование Spring Boot 1.2.2 для создания приложения Spring MVC. Я также использую Spring HATEOAS.
Проблема, которую я испытываю, заключается в том, что мой сконфигурированный ObjectMapper используется правильно, когда мои методы контроллера возвращают List<>
, но при возврате классов Resource
(например, MyClass extends ResourceSupport
) используется другой ObjectMapper,
Это более чем немного разочаровывает, чтобы попытаться настроить Jackson ObjectMapper. Я следовал за документацию и добавил свой собственный ObjectMapper
@Bean
к @Configuration
класса и аннотированный его @Primary
, и что один используется при сериализации List<>
.
Установка точки останова в контрольной точке конструктора ObjectMapper показывает, что конструктор вызывается примерно 20 раз. Я сделал плохой обзор каждого сценария:
@Bean
аннотированный с помощью @Primary
) Я бы рекомендовал либо использовать application.properties
для настройки Jackson, либо, если вам нужно больше контроля, объявление вашего собственного компонента Jackson2ObjectMapperBuilder
. В любом случае в конечном итоге вы получаете компонент Jackson2ObjectMapperBuilder
в контексте приложения, который затем может использоваться другими компонентами для создания ObjectMapper
с вашей желаемой конфигурацией или для применения этой конфигурации к любым существующим ObjectMapper
.
Изменение: есть проблема, открывающая для улучшения использования ObjectMapper
Actuator.