apache/gravitino

[Improvement] Correct JsonDateSerializer to output UTC times

Open

#8,204 建立於 2025年8月20日

在 GitHub 查看
 (5 留言) (0 反應) (2 負責人)Java (887 fork)auto 404
good first issueimprovement

倉庫指標

Star
 (3,058 star)
PR 合併指標
 (PR 指標待抓取)

描述

What would you like to be improved?

Correct JsonDateSerializer so it now formats dates using UTC (also known as Zulu or Zebra time) instead of the system’s default timezone.

Here is a unit test showing the issue:

  @Test
  @SuppressWarnings("JavaUtilDate")
  public void testSerializeUsesUtcTimezone() throws Exception {
    TimeZone original = TimeZone.getDefault();
    try {
      TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
      JsonDateSerializer serializer = new JsonDateSerializer();
      ObjectMapper mapper = new ObjectMapper();
      StringWriter writer = new StringWriter();
      JsonGenerator generator = mapper.getJsonFactory().createJsonGenerator(writer);
      Date date = new Date(0L);
      serializer.serialize(date, generator, mapper.getSerializerProvider());
      generator.flush();
      assertEquals("\"1970-01-01T00:00:00Z\"", writer.toString());
    } finally {
      TimeZone.setDefault(original);
    }

How should we improve?

see above

貢獻者指南