序列化日期时间失败 Cannot deserialize value of type `java.util.Date` from String

解决方案 一

(不是太推荐,因为不可能所有的实体类都去加这个注解,这也是我们昨天头疼的问题)

给实体类上面加上
@JsonFormat 反序列化 格式化日期时间注解

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

解决方案 二

我觉得最好使的办法

可以在Spring的全局配置文件application.yml中添加以下配置即可: spring: jackson: date-format: "yyyy-MM-dd HH:mm:ss " time-zone: "GMT+8" mvc: date-format: "yyyy-MM-dd HH:mm:ss " 以上配置等同于在字段上添加注解: @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") 如果你字段时间不要yyyy-MM-dd HH:mm:ss格式的,可以通过在字段上添加注解方式格式化日期,当然如果你只需要年月日,可以将表对应的字段设置为Date(年月日)而不是DateTime(年月日时分秒)类型

spring:
  jackson:
    serialization:
      write-dates-as-timestamps: true
    time-zone: GMT+8
    default-property-inclusion: non-null
    date-format: yyyy-MM-dd HH:mm:ss

这个问题,我们项目组好几个同事,直接干到11点;第二天找了以上午才找到;
yqm~

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值