【问题标题】:What are the default Jsonb serialization format for java date objectsjava日期对象的默认Jsonb序列化格式是什么
【发布时间】:2020-03-06 12:12:32
【问题描述】:

jsonb 对 java api 的各种日期对象默认使用的日期/时间格式是什么?

例如,javascript 的 new Date().toJSON() 生成的输出包含我期望使用 Jsonb 解析为 ZonedDateTime 字段的第二个分数,但默认序列化程序不支持第二个分数。

我是否必须指定自定义格式来映射 javascript Date

【问题讨论】:

    标签: java date jsonb


    【解决方案1】:

    Jsonb spec 指定了第 3.5 节中应支持的默认映射实现日期:

    实现必须支持以下标准 Java 日期/时间类的绑定:

    • java.util.Date
    • java.util.Calendar
    • java.util.GregorianCalendar
    • java.util.TimeZone
    • java.util.SimpleTimeZone
    • java.time.Instant
    • java.time.Duration
    • java.time.Period
    • java.time.LocalDate
    • java.time.LocalTime
    • java.time.LocalDateTime
    • java.time.ZonedDateTime
    • java.time.ZoneId
    • java.time.ZoneOffset
    • java.time.OffsetDateTime
    • java.time.OffsetTime

    javaindeed article 列出了用于它们的各种格式化程序以及示例输出:

    {
      "date":               "2016-07-27T23:07:41",
      "calendar":           "2016-07-27T23:07:41.782+02:00[Europe/Copenhagen]",
      "gregorianCalendar":  "2016-07-27T23:07:41.801+02:00[Europe/Copenhagen]",
      "timeZone":           "Europe/Copenhagen",
      "simpleTimeZone":     "Europe/Paris",
      "instant":            "2016-07-27T21:07:41.806Z",
      "duration":           "PT96H",
      "period":             "P3M",
      "localDate":          "2016-07-27",
      "localTime":          "23:07:41.807",
      "localDateTime":      "2016-07-27T23:07:41.807",
      "zonedDateTime":      "2016-07-27T23:07:41.807+02:00[Europe/Copenhagen]",
      "zoneId":             "Europe/Copenhagen",
      "zoneOffset":         "+03:30",
      "offsetDateTime":     "2016-07-27T23:07:41.807+02:00",
      "offsetTime":         "23:07:41.807+02:00",
    }
    

    在我的例子中,java.time.Instant 实例将从 javascript 的 Date.toJSON() 输出字符串中正确反序列化。

    【讨论】:

      猜你喜欢
      • 2016-07-03
      • 1970-01-01
      • 1970-01-01
      • 2020-01-08
      • 2015-08-07
      • 1970-01-01
      • 1970-01-01
      • 2010-10-21
      • 1970-01-01
      相关资源
      最近更新 更多