Wie Verwenden von Spring Boot " spring.jackson.Datum-format " - Eigenschaft?
Entsprechend der Aktuelle SpringBoot Reference Guide wenn ich die spring.jackson.date-format
Eigenschaft, es wird: Date format string or a fully-qualified date format class name. For instance 'yyyy-MM-dd HH:mm:ss'
.
Aber es funktioniert nicht auf diese Weise mit Spring Boot 1.5.3.
Demonstrieren, beginnend mit der Klasse:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.time.Instant;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
@RestController
class NowController{
@GetMapping("/now")
Instant getNow(){
return Instant.now();
}
}
und diese src/main/resources/application.properties
spring.jackson.date-format=dd.MM.yyyy
und diese build.gradle
:
buildscript {
ext {
springBootVersion = '1.5.3.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'org.springframework.boot'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile('org.springframework.boot:spring-boot-starter-web')
compile('com.fasterxml.jackson.datatype:jackson-datatype-jdk8')
compile('com.fasterxml.jackson.datatype:jackson-datatype-jsr310')
testCompile('org.springframework.boot:spring-boot-starter-test')
}
Bekomme ich die folgende:
http localhost:8080/now
HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
Date: Tue, 25 Apr 2017 22:37:58 GMT
Transfer-Encoding: chunked
"2017-04-25T22:37:58.319Z"
Beachten Sie, dass dies nicht dem angegebenen format dd.MM.yyyy
. Gibt es etwas anderes erforderlich ist spring.jackson.date-format
funktioniert nicht wie dokumentiert?
InformationsquelleAutor peterl | 2017-04-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Eigenschaft wird nur verwendet, für die
java.util.Date
Serialisierung und nichtjava.time.*
Klassen.Können Sie auf Nachfrage (pro Feld) angegebenen format mit
@JsonFormat(pattern="dd.MM.yyyy")
oder
Erstellen Sie eine bean, die die
org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer
- Schnittstelle und benutzerdefinierte setup-serialisierungsprogramme auf dem ObjectMapper fürjava.time.*
Klassen, die eine weitere sinnvolle format.InformationsquelleAutor Strelok