我有一个简单的 SpringBoot Java 应用程序。关于记录和使用LocalDateTime.now()
显示错误的时间戳,比系统(Ubuntu)默认值多 1 小时。
在日志记录时间戳中是:2020-11-26 14:46:00,584 INFO [scheduling-1]....
开始打印 LocalDateTime
也。
但是,系统时间不同:
$ date
qui nov 26 13:50:13 -03 2020
那么,我如何设置应用程序以从系统获取正确的时间?
最佳答案
在 Java 中为时间指定明确的时区。例如:
ZoneId desiredTimeZone = ZoneId.of("America/Sao_Paulo");
ZonedDateTime logTime = ZonedDateTime.now(desiredTimeZone);
System.out.println(logTime);
我的 Java 11 上的示例输出:2020-11-27T03:13:50.944898-02:00[America/Sao_Paulo]
关于Java Spring Boot应用程序获得不同的系统时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65026230/