gpt4 book ai didi

java - 如何修复 'com.fasterxml.jackson.databind.JsonMappingException: Problem deserializing property'错误

转载 作者:行者123 更新时间:2023-12-02 10:05:44 25 4
gpt4 key购买 nike

我正在使用对象映射器将 yyyy-MM-dd 格式的日期字符串转换为 com.datastax.driver.core.LocalDate 并将该数据保存到我的 java spring boot 项目中的 Cassandra 中。我在 Cassandra 中的列的类型是日期,我在我的 java 类中使用 com.datastax.driver.core.LocalDate 。但是,在将 map 转换为我的java类时,它会抛出错误“com.fasterxml.jackson.databind.JsonMappingException:反序列化属性'employeedateofbirth'时出现问题(预期类型:[简单类型,类com.datastax.driver.core.LocalDate];实际类型:java.time.LocalDate),问题:参数类型不匹配”。我没有使用 java.time.LocalDate 仍然给我参数不匹配错误。

我什至尝试使用以下代码注册模块

ObjectMapper oMapper = new ObjectMapper().registerModule(new ParameterNamesModule()).registerModule(new Jdk8Module()).registerModule(new JavaTimeModule());
oMapper.findAndRegisterModules();

我还尝试了一些对象映射器配置,例如

oMapper.configure(MapperFeature.USE_GETTERS_AS_SETTERS, false) ;

甚至在我的属性上使用了注释:

@JsonDeserialize(using = LocalDateDeserializer.class)
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE)
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate employeedateofbirth;

但似乎没有什么对我有用。任何帮助,将不胜感激。提前致谢。

最佳答案

如错误消息所示,存在类型不匹配。在您的目标类中更改此设置:

import com.datastax.driver.core.LocalDate;

进入:

import java.time.LocalDate;

关于java - 如何修复 'com.fasterxml.jackson.databind.JsonMappingException: Problem deserializing property'错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55351493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com