Heim >Java >javaLernprogramm >Wie kann ich die JSON-Serialisierung von Java 8 LocalDates in Spring Boot anpassen?
Anpassen der JSON-Serialisierung von Java 8 LocalDates in Spring Boot
Problem:
Bei der Formatierung B. ein Java 8 LocalDateTime innerhalb einer Spring Boot-Anwendung, besteht die resultierende JSON-Darstellung aus ausführlichen Feldwerten anstelle des gewünschten ISO-Datums formatieren.
Lösung:
Vor Spring Boot 2.x ist eine zusätzliche Konfiguration erforderlich, um die gewünschte Formatierung zu erreichen:
Folgende Abhängigkeit hinzufügen:
compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0")
Zeitstempelfrei aktivieren Datumsserialisierung durch Hinzufügen des Folgenden zu application.properties:
spring.jackson.serialization.write_dates_as_timestamps=false
Fügen Sie die folgende Annotation zum LocalDateTime-Eigenschafts-Getter hinzu:
@JsonFormat(pattern="yyyy-MM-dd") public LocalDateTime getStartDate() { return startDate; }
Erklärung:
Einschließlich der jackson-datatype-jsr310-Abhängigkeit registriert einen Konverter für LocalDateTime. Durch die Konfiguration von write_dates_as_timestamps auf „false“ wird sichergestellt, dass der Standardkonverter verwendet wird, was zu einem serialisierten Datum im ISO-Format jjjj-MM-tt führt. Die Annotation @JsonFormat passt das Format weiter an die gewünschte Zeichenfolgendarstellung an.
Das obige ist der detaillierte Inhalt vonWie kann ich die JSON-Serialisierung von Java 8 LocalDates in Spring Boot anpassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!