Я хочу настроить пользовательские конвертеры сообщений на основе конечных точек. Например, у меня есть две конечные точки в контроллере загрузки Spring:
@RequestMapping(value = "/all", method = RequestMethod.GET)
public ResponseEntity<Object> findAll{@PageableDefault(size = 10, page = 0) final Pageable pageable){
//code
}
@RequestMapping(value = "/object/{id}", method = RequestMethod.GET)
public ResponseEntity<Object> byId{@RequestParam("id" String id){
//code
}
Для обоих из них я хочу использовать разные экземпляры HttpMessageConverter (и, в свою очередь, средство сопоставления объектов). Например. Я хочу установить стратегию CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES
для конечной точки /all
из-за того, что это выгружаемый ответ, но не для /object
.
В приложении уже есть переопределенный метод configureMessageConverters
, а bean-компонент Objectmapper используется для всех API. Если я внесу какие-либо изменения в это, это будет применимо ко всем конечным точкам, чего я не хочу.
Есть ли другой способ сделать это? (Что-то вроде создания и использования пользовательского конвертера сообщений в самом методе findAll
)