杰克逊正在将春季靴休息申请中的日期更改为一天前。

S T*_*ari 5 spring jackson spring-boot

我使用 Spring Boot 1.5.2 创建了一个简单的应用程序。我正在传递日期,并且已经在 application.properties 文件中提到了日期格式如下: spring.jackson.joda-date-time-format=yyyy-MM-dd

但是,当使用任何客户端调用其余服务进行 POST(插入)或 PUT(更新)时,日期将更改为当天的日期。示例 2017-03-21 将更改为 2017-03-20。

Ben*_*rme 3

我遇到了同样的问题,并以这种方式解决了它:在您的实体中,添加这些注释:

@Temporal(TemporalType.DATE)
@JsonFormat(shape = JsonFormat.Shape.STRING, locale = "fr-FR", timezone = "Europe/Paris")
private Date yourDate;
Run Code Online (Sandbox Code Playgroud)

或者您可以将这些行添加到 application.properties 文件中:

spring.jackson.time-zone=Europe/Paris
spring.jackson.locale=fr_FR
Run Code Online (Sandbox Code Playgroud)

如果您在另一个国家/地区,您可以更改区域设置和时区,但即使您保留法国,它也会起作用。