LocalDate 序列化:日期作为数组?

2023-12-31

我使用 Java 11 并希望将 LocalDate/LocalDateTime 序列化/反序列化为字符串。 好的。 我添加了依赖:

    <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jsr310</artifactId>
        <version>${jackson.version}</version>
    </dependency>

和模块:

@Bean
public ObjectMapper objectMapper() {
    return new ObjectMapper()
            .registerModule(new JavaTimeModule())
            .configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
            .enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY);
}

当我将日期发送到我的应用程序时,它会正确反序列化:

{"profileId":12608,"birthDate":"2008-03-20","relativeType":"SON","cohabitants":true}

当我直接使用 objectMapper 作为 bean 时,它也可以正确序列化:

{"code":"SUCCESS","id":868,"profileId":12608,"birthDate":"2008-03-20","relativeType":"SON","cohabitants":true}

但是当它与控制器序列化时,它序列化为数组:

{"code":"SUCCESS","id":868,"profileId":12608,"birthDate":[2008,3,20],"relativeType":"SON","cohabitants":true}

问题是在控制器上反序列化正文中的日期。 控制器是:

@PostMapping
public Relative create(@Validated(Validation.Create.class) @RequestBody Relative relative) {
    return service.create(relative);
}

相对类:

@Getter
@Setter
@ToString(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class Relative extends MortgageResponse {

    @Null(groups = Validation.Create.class)
    @NotNull(groups = Validation.Update.class)
    private Long id;

    @NotNull
    private Long profileId;

    private LocalDate birthDate;
    private RelativeType relativeType;
    private Boolean cohabitants;
}

请给我建议,有什么问题以及如何解决它。


Add the @JsonFormat注解到你的birthDate字段,或者更确切地说任何日期字段和你的ObjectMapper(Spring Boot或不是)应该尊重格式,只要你对你的类路径有额外的js310依赖。

@JsonFormat(pattern="yyyy-MM-dd")
private LocalDate birthDate;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LocalDate 序列化:日期作为数组? 的相关文章

随机推荐

  • ListView 适配器和焦点状态

    我有一些列表视图 这是项目视图的代码
  • Matplotlib 图未使用 ipywidgets 滑块更新

    我有以下代码来生成一个简单的图表 matplotlib notebook from ipywidgets import import numpy as np import matplotlib pyplot as plt x np lins
  • 无法自动选择 Xcode 项目

    当我在正确的目录中输入 pod install 时 我总是得到这个 分析依赖关系 Could not automatically select an Xcode project Specify one in your Podfile lik
  • SQL 计算所有行而不是计算单个行

    我有一个从数据库请求数据的 SQL 语句 SELECT ID To Poster Content Time ifnull Aura 0 as Aura FROM SELECT FROM SELECT DISTINCT FROM messag
  • WCF 票证基础身份验证

    我正在编写使用 wsHttpBinding 绑定的 WCF 服务 该服务不是托管在 IIS 中而是托管在 Windows 服务中 我希望在服务中有一个 Login user pass 方法 如果用户有效 它将向客户端提供一张票证 谁能帮助我
  • Swift 4 Decodable:嵌套数组的结构

    鉴于以下 JSON 文档 我想创建一个struct有四个属性 filmCount Int year Int category 字符串 以及actor 演员阵列 filmCount 5 year 2018 category Other act
  • 将循环缓冲区就地移动/对齐/旋转为零

    我正在使用循环缓冲区将数据推送到列表的任一端 完成后 我想对齐缓冲区 以便列表中的第一个元素位于位置零 并且可以像常规数组一样使用 而无需任何花哨的索引开销 所以我有我的循环list有能力N 它有n从任意索引开始的元素f 移动 旋转所有元素
  • 用鸭子类型语言模拟静态类型的各个方面

    在我目前的工作中 我正在构建一套严重依赖于对象的 Perl 脚本 使用 Perl 的bless 在哈希上尽可能接近 OO 现在 由于缺乏更好的表达方式 我公司的大多数程序员都不是很聪明 更糟糕的是 他们不喜欢阅读文档 并且似乎在理解其他人的
  • 检查 SaveAs 是否成功 VBA

    我需要什么样的语句来检查vba中的SaveAs操作是否成功 Sub saveBookAs wb SaveAs fileName newFile End Sub 您不需要语句来检查工作簿是否已保存 如果Save As进程失败 那么该行将自动出
  • 详细命名空间常用来做什么

    在一些较大的项目或库 例如 Eigen 中 您可以看到诸如internal or detail 我明白什么是internal有好处 但是什么是detail常用于 是否有任何通用约定将代码分发到这样的命名空间中 特别是在具有公共接口的库的情况
  • Flutter Firebase Cloud Messaging onMessage 被触发两次

    我已经实现了 firebase messaging flutter 包建议的基本配置 但是 每次我在 flutter 应用程序上收到通知时 onMessage 都会被触发两次 我正在使用 firebase messaging 6 0 9 D
  • 在 Clojure 中使用 data.zip 解析 XML 时出现 OutOfMemoryError

    我想使用 Clojure 从维基词典 XML 转储中提取标题 I used head n10000 gt out 10000 xml创建原始怪物文件的较小版本 然后我用文本编辑器进行修剪 使其成为有效的 XML 我根据里面的行数重命名了文件
  • 有更简单或更好的方法吗?

    我目前正在开发一个网站 由带有论坛的 cms 组成 我想为每个用户提供执行特定任务的积分 每次都是 这最终应该给他们一个排名 例如 如果用户发了一篇帖子 他们会得到 5 分 如果用户提交了一个话题 主题 他们会得到 20 分 依此类推 如果
  • 在 PHP 中读取原始 I/O 流的另一种方法

    我正在尝试寻找阅读 php input 的替代方法 我用它从 CURL PUT 获取 XML 数据 我通常这样做 xml file get contents php input 但是 我有一些问题file get contents 在 Wi
  • 如何在 .draw() 之后保持 jQuery DataTables 滚动位置

    我正在使用 jQuery Datatables 插件来创建一个小表 12 行 一些
  • 多线程信号处理

    在unix中 如果向多线程进程发送信号 哪个线程将执行处理函数 如果是多cpu机器 则同时运行的线程数超过1个 哪个线程将运行信号处理函数 根据男人7信号 http linux die net man 7 signal 进程中的所有线程共享
  • Java 中本地时间与 UTC 的换算

    我正在尝试在java中将本地时间转换为UTC时间 我已经写了代码 String datesToConvert 31 12 2018 23 37 00 String dateFormat dd MM yyyy HH mm ss SimpleD
  • Cycle2 旋转木马活动滑块位于中心

    我将 Cycle2 与轮播寻呼机一起使用 与此演示的方式相同 http jquery malsup com cycle2 demo caro pager php http jquery malsup com cycle2 demo caro
  • 当从 sd 卡中的 lib 加载片段时,Android 系统在活动重新创建时无法找到片段?

    我已经从外部库加载了一个片段 可以在 SD 卡中成功使用 但是当 Android 系统重新创建活动时 我的应用程序崩溃了 因为 Android 系统无法找到外部库中可用的片段类 从外部 apk 加载 Fragment 的代码 final S
  • LocalDate 序列化:日期作为数组?

    我使用 Java 11 并希望将 LocalDate LocalDateTime 序列化 反序列化为字符串 好的 我添加了依赖