首页 >Java >java教程 >如何使用 Spring Boot 以 JSON 格式简洁地格式化 Java 8 LocalDateTime 对象?

如何使用 Spring Boot 以 JSON 格式简洁地格式化 Java 8 LocalDateTime 对象?

Patricia Arquette
Patricia Arquette原创
2024-11-26 12:13:09990浏览

How Can I Format Java 8 LocalDateTime Objects Concisely in JSON with Spring Boot?

通过 Spring Boot 将 Java 8 LocalDateTime 格式化为 JSON

在序列化和反序列化过程中保持时态数据的一致且直观的格式对于现代至关重要应用程序开发。然而,在 Spring Boot 应用程序中格式化 Java 8 LocalDateTime 对象通常会带来挑战。

问题:

当尝试在 Spring Boot 应用程序中格式化 LocalDateTime 对象时,用户可能会遇到类似于以下内容的详细输出:

"startDate" : {
    "year" : 2010,
    "month" : "JANUARY",
    "dayOfMonth" : 1,
    "dayOfWeek" : "FRIDAY",
    "dayOfYear" : 1,
    "monthValue" : 1,
    "hour" : 2,
    "minute" : 2,
    "second" : 0,
    "nano" : 0,
    "chronology" : {
      "id" : "ISO",
      "calendarType" : "iso8601"
    }
  }

Desired结果:

目标是将 LocalDateTime 对象格式化为更简洁易读的格式,例如:

"startDate": "2015-01-01"

解决方案:

为了实现所需的格式,用户必须首先将以下依赖项添加到他们的项目:

compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0")

此依赖项引入了一个自动处理 LocalDateTime 对象转换的转换器。此外,必须将以下配置添加到 application.properties 文件中:

spring.jackson.serialization.write_dates_as_timestamps=false

通过将此属性设置为 false,Spring 将利用适当的转换器将日期格式化为字符串而不是时间戳。如果需要特定的格式,可以使用 @JsonFormat 和 @DateTimeFormat 等注释。

以上是如何使用 Spring Boot 以 JSON 格式简洁地格式化 Java 8 LocalDateTime 对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn