从模式注册表中获取代码中生产者的avro模式

deyfvvtc  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(240)

confluent提供了以下示例:

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");
ProducerRecord<Object, Object> record = new ProducerRecord<>("topic1", key, avroRecord);
try {
  producer.send(record);
} catch(SerializationException e) {
  // may need to do something with it
}

有没有什么方法可以直接从schema注册表(如果已经存在)中获取producer的userschema,而不是硬编码?

u59ebvdq

u59ebvdq1#

您可以使用maven插件下载模式。
如果您真的想在运行时获取模式,还可以使用restapi。

相关问题