У меня есть проект, который использует Spring MVC для создания и обработки нескольких конечных точек REST. В настоящее время я работаю над использованием Jackson для автоматической обработки сериализации/десериализации JSON с использованием аннотаций @RequestBody
и @ResponseBody
.
Я заставил Джексона работать, так что у меня есть отправная точка. Моя проблема в том, что наша старая сериализация выполнялась вручную и использовала корпус Pascal вместо корпуса Camel ("MyVariable" вместо "myVariable"), а Джексон использует корпус Camel по умолчанию.
Я знаю, что могу вручную изменить имя переменной, используя @JsonProperty
. При этом я не считаю добавление @JsonProperty
ко всем моим переменным жизнеспособным долгосрочным решением.
Есть ли способ заставить Джексона использовать регистр Pascal при сериализации и десериализации, кроме использования аннотации @JsonProperty
?
РЕДАКТИРОВАТЬ: Похоже, нет чистого способа сделать это извне. Несколько человек предложили переопределить разные классы как способ достижения моей цели. Я открыт для предложений о том, что я могу переопределить, что изменит корпус. На данный момент я сделал собственный ObjectMapper, который устанавливает некоторые свойства, которые я хочу (а именно Inclusion.NON_NULL
). Я еще не нашел места, которое позволило бы мне изменить поведение корпуса. есть идеи?