赞
踩
"message": "JSON parse error: Cannot deserialize value of type `java.util.Date` from String
\"2023-06-14\": not a valid representation (error: Failed to parse Date value '2023-06-14':
Unparseable date: \"2023-06-14\"); nested exception is com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type
`java.util.Date` from String \"2023-06-14\": not a valid representation (error: Failed to parse
Date value '2023-06-14': Unparseable date: \"2023-06-14\")\n at [Source:
(PushbackInputStream); line: 1, column: 17] (through reference chain:
com.goodcol.service.vms.dto.projectUser.ProjectUserAddDTO[\"expectedTime\"])"
}
这是因为传递的日期字符串 “2023-06-14” 无法被正确解析为 java.util.Date 类型。您可以通过在 ProjectUserAddDTO 类中添加 @JsonFormat 注解来指定日期格式,以便 Jackson 能够正确地解析日期字符串。例如,您可以按照以下方式声明 expectedTime 属性:
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
private Date expectedTime;
其中,shape 参数用于指定日期的格式,pattern 参数用于指定日期格式的字符串表达式。
如果您使用的是 Spring 框架,则可以将默认日期格式设置为 “yyyy-MM-dd”。您可以在应用程序配置文件(例如 application.properties)中添加以下属性:
spring.jackson.date-format=yyyy-MM-dd
这样,Spring 就会自动使用指定的日期格式来解析传递的日期字符串,从而避免上述错误。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。