我正在向具有updatedDate属性的外部服务发送请求
@UpdateTimestamp
@Column(name = "updated_date")
private LocalDateTime updatedDate;
当我在 DTO 中收到响应时,我尝试像这样设置 LocalDateTime 属性的格式
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd'T'HH:mm:ss")
private LocalDateTime updatedDate;
但是我在 Postman 中遇到错误
"message": "JSON parse error: Cannot deserialize value of type `java.time.LocalDateTime` from String \"2020-04-14T10:45:07.719\": Text '2020-04-14T10:45:07.719' could not be parsed at index 14; nested exception is com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type `java.time.LocalDateTime` from String \"2020-04-14T10:45:07.719\
最佳答案
输入字符串中有毫秒,因此格式应为“yyyy-MM-dd'T'HH:mm:ss.SSS”
更新: 如果毫秒部分由 1、2、3 位数字组成或者是可选的,则可以使用以下格式:
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss[.SSS][.SS][.S]")
private LocalDateTime updatedTime;
关于java - JSON解析错误: Cannot deserialize value of type `java.time.LocalDateTime` from String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61202937/