java - 以 Java 8 日期为逻辑类型的 Avro

标签 java java-8 avro

最新的 Avro 编译器 (1.8.2) 为 dates logical types 生成 java 源代码与 Joda-Time基于实现。如何配置 Avro 编译器以生成使用 Java 8 日期时间 API 的源代码?

最佳答案

目前(avro 1.8.2)这是不可能的。它被硬编码为生成 Joda 日期/时间类。

当前的 master 分支已经切换到 Java 8 并且有一个 open issue (使用 Pull Request )添加生成具有 java.time.* 类型的类的能力。

不幸的是,对于目前在 master 中的任何内容,我都不知道任何类型的发布时间表。如果您喜欢冒险,可以将补丁应用到 1.8.2,因为理论上它应该都是兼容的。序列化/反序列化时的底层基本类型仍然是整数和长整型。

关于java - 以 Java 8 日期为逻辑类型的 Avro,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45712231/

相关文章:

java - 获取另一个Java进程的工作目录

json - 当 json 中的字段不总是相同时的 Avro 架构

avro - org.apache.avro.AvroTypeException : Unknown union branch

java - 如何使用系统默认套接字实现 SocketImplFactory

Eclipse IDE 中的 java.io.Console 支持

java - eclipse helios for maven项目中Sonar插件安装问题

java - 使用 Java 8 功能从两个 int 数组中获取相同的值

java - 避免 "If (parameter == null)"语句

java - spring-kafka 使用 Avro 序列化/反序列化 org.springframework.messaging.Message 对象

java - 动态JNLP从服务器获取文件