首页 >Java >java教程 >如何在 Spring Boot 中正确格式化 LocalDateTime JSON?

如何在 Spring Boot 中正确格式化 LocalDateTime JSON?

Barbara Streisand
Barbara Streisand原创
2024-11-21 03:43:10913浏览

How to Properly Format LocalDateTime JSON in Spring Boot?

在 Spring Boot 中格式化 JSON LocalDateTime

在 Spring Boot 应用程序中,将 Java 8 LocalDateTime 值格式化为 JSON 可能会带来挑战。虽然转换常规日期很简单,但 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"
    }
  }

要解决此问题,请按照以下步骤操作:

  1. 添加JSR-310 转换器依赖项:

    <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jsr310</artifactId>
    </dependency>

    此依赖项提供 Spring 将自动注册的转换器。

  2. 配置应用程序属性:

    spring.jackson.serialization.write_dates_as_timestamps=false

    此设置可确保使用正确的转换器,从而产生以下格式:

    "startDate": "2016-03-16T13:56:39.492"
  3. 自定义日期格式(可选) ):

    使用@JsonFormat注解覆盖默认格式:

    @JsonFormat(pattern="yyyy-MM-dd")
    public LocalDateTime getStartDate() {
        return startDate;
    }

以上是如何在 Spring Boot 中正确格式化 LocalDateTime JSON?的详细内容。更多信息请关注PHP中文网其他相关文章!

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