在Json中返回字段date time:
"date": "2023-09-22 01:07:50.062477"
字符串
在类Json中:
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
public LocalDateTime date;
型
返回错误:
原因:com.fasterxml.Jackson.databind.exc. InvalidExceptionException:无法构造java.time.LocalDateTime
的示例(不存在创建者,如默认构造):没有要从String值中解析的String参数构造函数/工厂方法(“2023 -09-22 02:11:13.855618”)
如何解决?
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
public LocalDateTime date;
型
2条答案
按热度按时间35g0bw711#
我不知道你如何从前端交互,从前端传递json数据,或者当你调用端点时,把它放在控制器类中的@PathVariable或@RequestParam中:
字符串
使用此标准ISO方法。
czfnxgou2#
你会得到这个错误,因为Json试图将date sting转换为
LocalDateTime
的示例,但由于该类上没有构造函数或类似的方法,它无法做到这一点。您可以通过扩展
JsonDeserializer
创建一个自定义的解析器类来获得解决方案,并重写解析器方法并返回到解析所需的。字符串
然后改为使用自定义注解器注解该字段。
型
我相信你有这种依赖性。
型
希望这对你有用。我确实在3-4个月前得到了一些捷径。抱歉我忘了。