当前位置: 首页 > 后端技术 > Java

springboot传递Date类型数据报错,无法读取JSON:Unabletoconstructjava.util.DateinstancefromString

时间:2023-04-01 21:40:03 Java

前端传值:{"省":"省份","publish":"2021-10-0100:00:00"}实体:@ApiModelProperty(value="推出时间")privateDatepublish;报错信息如下:已解决[org.springframework.http.converter.HttpMessageNotReadableException:JSONparseerror:Cannotdeserializevalueoftype`java.util.Date`fromString"2021-10-0100:00:00":notavalidrepresentation(error:无法解析日期值“2021-10-0100:00:00”:无法解析日期“2021-10-0100:00:00”:虽然它似乎符合格式“yyyy-MM-dd”T'HH:mm:ss.SSSX',解析失败(leniency?null));嵌套异常是com.fasterxml.jackson.databind.exc.InvalidFormatException:无法从字符串“2021-10-0100:00:00”中反序列化`java.util.Date`类型的值:不是有效表示(错误:失败解析日期值“2021-10-0100:00:00”:无法解析日期“2021-10-0100:00:00”:虽然它似乎符合格式“yyyy-MM-dd”T'HH:mm:ss.SSSX',解析失败(leniency?null))at[Source:(PushbackInputStream);line:3,column:15](throughreferencechain:houseHistory.entity.House["publish"])]错误内容解释:UnabletoreadJSON:Unabletoconstructjava.util.Dateinstancevalue'2012-fromString07-2112:11:12':无效表示(“yyyy-MM-dd'T'HH:mm:ss.SSSZ”,“yyyy-MM-dd'T'HH:mm:ss.SSS'Z'”,"EEE,ddMMMyyyyHH:mm:sszzz","yyyy-MM-dd"))解决方法如下:使用@JsonFormat注解在实体Date类型的字段上格式化日期,如下@ApiModelProperty(value="Launchtime")@JsonFormat(locale="zh",timezone="GMT+8",pattern="yyyy-MM-ddHH:mm:ss")私有日期发布;