Jackson ignoriert Frühjahr.jackson.Eigenschaften, die in meinem spring-boot-Anwendung
Jackson ignoriert Frühjahr.jackson.Immobilien-naming-Strategie=SNAKE_CASE.
Ich bin mit springBootVersion 1.4.2.RELEASE. In meiner Anwendung.properties-Datei, die ich Hinzugefügt haben
Frühjahr.jackson.Immobilien-naming-Strategie=SNAKE_CASE
Aber Jackson ist nicht zu Ehren diese Eigenschaft, und der REST meiner Antwort ist noch camelCase. Interessant ist, dass diese annotation funktioniert Prima
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
Mit dieser Anmerkung, ich bin immer snake_case Antwort. Aber das möchte ich nicht kommentieren jede Antwort Klasse, es ist ein bisschen nervig.
Bearbeiten
Versuchte ich mit voll qualifizierten Klassennamen als gut,
spring.jackson.property-naming-strategy=com.fasterxml.jackson.databind.PropertyNamingStrategy.SnakeCaseStrategy
das hat nicht funktioniert entweder
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hatte ich
@EnableWebMvc
annotation in einer der Klassen (ExceptionHandler) in meiner Anwendung (face-palm!).Aber, nach dieser Problem,
Einmal habe ich entfernt
@EnableWebMvc
Anmerkung diese Eigenschaft funktioniert wie erwartet.Laut doc
Können Sie config in " - Anwendung.Eigenschaften" mit dabei:
MappingJackson2HttpMessageConverter-Klasse verwendet die default-Instanz erstellt, indem Jackson2ObjectMapperBuilder.json() Methode. Um die Anwendung verwenden conext ist ObjectMapper, registrieren Sie einen benutzerdefinierten WebMvcConfigurerAdapter.
Genau wie @skadya Antwort, aktualisiere ich es im neuen Frühjahr-version und Java-8-Stilen.
Für den Datensatz, zu lösen ein ähnliches problem, das ich Hinzugefügt dies zu meiner Anwendung.Eigenschaften und es funktionierte gut:
spring.jackson.property-naming-strategy=SNAKE_CASE
Beachten Sie, dass Sie nicht brauchen, um vollständig zu qualifizieren, die SNAKE_CASE wie in anderen Antworten
Ich denke, vielleicht von Ihnen erstellte Klasse erweitert
WebMvcConfigurationSupport
,WebMvcConfigurationSupport
enthält @EnableWebMvc, nicht erweitertWebMvcConfigurationSupport
,verwenden einige Klasse erweitertWebMvcConfigurationSupport