根据IntelliJ调试器,OffsetDateTime值显示如下:
+ 51434-04-02T15:28:41Z
任何想法如何解析年份部分或使其有意义?当我在数据库上查看原始日期时,它实际上以毫秒为单位。我无权访问保存这些日期的团队。另外,通过测试访问数据时,执行log.debug时也显示相同的结果。
答案 0 :(得分:3)
看到时间戳记,我想我知道为什么会这样。代码的某些部分错误地解释了时间戳1559909381182。此时间戳表示自纪元以来的毫秒数,但您的代码已将其解释为 seconds 的数目。比较这两行:
System.out.println(Instant.ofEpochSecond(1559909381182L));
System.out.println(Instant.ofEpochMilli(1559909381182L));
第一行将打印出未来几千年的日期,而第二行将打印出更合理的日期。
您应该尝试查找您将其解释为第二秒的地方。