大佬教程收集整理的这篇文章主要介绍了Spring Data MongoDB的Java 8日期/时间(JSR-310)类型映射,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我不知道这是否是最好的方法,但是我向Spring Data MongoDB添加了Java 8 Date /
Time(JsR-310)类型支持,1.5.0.RELEASE
如下所示:
Converter
小号public class InstantTolongConverter implements Converter<Instant, Long> { @OverrIDe public Long convert(Instant instant) { return instant.toEpochMilli(); } } public class LongToInstantConverter implements Converter<Long, Instant> { @OverrIDe public Instant convert(Long sourcE) { return Instant.ofEpochMilli(sourcE); } } public class LocalDatetoStringConverter implements Converter<LocalDate, String> { @OverrIDe public String convert(LocalDate localDatE) { return localDate.toString(); } } public class StringTolocalDateConverter implements Converter<String, LocalDate> { @OverrIDe public LocalDate convert(String sourcE) { return LocalDate.parse(sourcE); } }
@H_489_15@
- 第二步。注册这些自定义的
Converter
与S @H_315_3@mapPingMongoConverter在AbstractMongoConfiguration
实现这样的:@Configuration @EnableMongoRepositorIEs(basePackages = {"my.app.repository"}) public class MongoConfiguration extends AbstractMongoConfiguration { ... @OverrIDe public Customcatonversions customcatonversions() { return new Customcatonversions(Arrays.asList( new InstantTolongConverter(), new LongToInstantConverter(), new LocalDatetoStringConverter(), new StringTolocalDateConverter())); } }
@H_489_15@现在,您文档的
Instant
字段将LocalDate
作为字符串保留为long值和。解决方法
我有一个带有Java 8日期/时间字段的简单文档
@Document public class Token { private Instant createdAt; ... }
@H_489_15@我想继续使用Spring Data MongoDB
1.5版。但是类型字段java.time.Instant
不能正确反序列化,因为@H_315_3@mappingMongoConverter缺少java.time
类的转换器。在春季4中,我发现
org.springframework.format.datetiR_587_11845@e.standard.datetiR_587_11845@eConverters
使用包含不同Converter
的,InstantToLongConverter
并将其LongToInstantConverter
声明为私有静态类。如何配置@H_315_3@mongoTemplate使用它们将
Instant
字段映射为long?大佬总结
以上是大佬教程为你收集整理的Spring Data MongoDB的Java 8日期/时间(JSR-310)类型映射全部内容,希望文章能够帮你解决Spring Data MongoDB的Java 8日期/时间(JSR-310)类型映射所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。