如何解决使用 SpringBoot 在 MongoDB 中使用错误类型保存的 LocalDateTime ?
我有这个简单的 Java 类型:
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class AnnotationSample {
private LocalDateTime startDate;
}
以下是 MongoDB 中保存的 AnnotationSample 类型的实例: The LocalDateTime field is stored with the Object type
当我尝试使用 Java/SpringBoot 找回 AnnotationSample 时,出现以下错误:
org.bson.codecs.configuration.CodecConfigurationException:使用 AutomaticPojoCodec 解码时发生异常。
解码为“AnnotationSample”失败,出现以下异常: 无法解码“AnnotationSample”。解码 'startDate' 出错:无法解码为 LocalDateTime,预期为 'DATE_TIME' BsonType 但得到了 'DOCUMENT'。
可能需要显式配置和注册自定义编解码器或 PojoCodec 以处理此类型。
我的依赖:
- org.mongodb:mongodb-driver-sync:4.3.0
- org.mongodb:mongodb-driver-async:3.12.9
- org.springframework.data:spring-data-mongodb:3.2.3
- org.springframework.data:spring-data-releasetrain:Neumann-SR7
- org.mongodb:bson:4.3.0
我使用了几乎可以在 Matrix 上找到的任何提示,但无济于事。我什至将此添加到我的配置中:
@Bean
public MongoCustomConversions mongoCustomConversions() {
return new MongoCustomConversions(new ArrayList<>(jsr310Converters.getConvertersToRegister()));
}
有人可以帮忙吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。