Apache Avro 为序列化提供了一种紧凑、快速、二进制数据格式、丰富的数据结构。但是,它需要用户为需要序列化的对象定义一个模式(在 JSON 中)。
在某些情况下,这是不可能的(例如:该 Java 对象的类有一些成员,其类型是外部库中的外部 Java 类)。因此,我想知道是否有一种工具可以从对象的 .class 文件中获取信息并为该对象生成 Avro 模式(例如 Gson 使用对象的 .class 信息将特定对象转换为 JSON 字符串)。
原文由 Richard Le 发布,翻译遵循 CC BY-SA 4.0 许可协议
查看 Java 反射 API 。
获取架构如下所示:
有关 工作示例,请参阅 Doug 关于另一个问题的示例。
这个答案的学分属于肖恩巴斯比。