我是Kafka和avro的新手,并尝试使用汇合包.我们有用于JPA的现有POJO,我希望能够简单地生成我的POJO的实例,而无需手动将每个值反映到通用记录中.我似乎想念文档中是如何完成的.
这些示例使用通用记录并逐个设置每个值,如下所示:
String key = "key1"; String userSchema = "{\"type\":\"record\"," + "\"name\":\"myrecord\"," + "\"fields\":[{\"name\":\"f1\",\"type\":\"string\"}]}"; Schema.Parser parser = new Schema.Parser(); Schema schema = parser.parse(userSchema); GenericRecord avroRecord = new GenericData.Record(schema); avroRecord.put("f1", "value1"); record = new ProducerRecord
有几个从类中获取模式的示例,我发现注释可以根据需要更改该模式.现在我如何获取POJO的实例并将其直接发送到序列化程序并让库完成从类中匹配模式然后将值复制到通用记录中的工作?我错了吗?我想要最终做的是这样的:
String key = "key1"; Schema schema = ReflectData.get().getSchema(myObject.getClass()); GenericRecord avroRecord = ReflectData.get().getRecord(myObject, schema); record = new ProducerRecord
谢谢!