Jackson是改变日期,以一天大的Spring Boot 休息申请,

j0pj023g  于 2023-02-18  发布在  Spring
关注(0)|答案(2)|浏览(97)

我已经使用spring Boot 1.5.2创建了一个简单的应用程序。我正在传递日期,并且已经在www.example.com文件中提到了日期格式application.properties,如下所示:spring.Jackson. joda日期时间格式=yyyy-MM-dd
但是,当使用任何客户端调用rest rest服务进行POST(插入)或PUT(更新)时,日期将更改为日期旧。示例2017-03-21将更改为2017-03-20。

knsnq2tg

knsnq2tg1#

我也遇到过同样的问题,我用这种方法解决了它:在您的实体中,添加以下注解:

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

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

spring.jackson.time-zone=Europe/Paris
spring.jackson.locale=fr_FR

如果你在另一个国家,你可以改变语言环境和时区,但即使你保留法国,它也会工作。

5lhxktic

5lhxktic2#

只需将时区设置为UTC,如下所示

SpringApplication.run(Application.class, args);
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));

它解决了我的问题。

相关问题