Я занимаюсь разработкой простого Java с потоковой передачей.
Я настроил коннектор kafka jdbc (postgres к теме) и хочу прочитать его с потребителем потоковой передачи.
I 'я могу правильно прочитать тему с помощью:
./kafka-avro-console-consumer --bootstrap-server localhost:9092 --property schema.registry.url=http://localhost:8081 --property print.key=true --from-beginning --topic postgres-ip_audit
, получая следующие результаты:
null {"id": 1557, "ip": {"string": "90.228.176.138 "}," create_ts ": {" long ": 1554819937582}}
, когда я использую Java-приложение с этой конфигурацией:
Map<String, Object> kafkaParams = new HashMap<>();
kafkaParams.put("bootstrap.servers", "localhost:9092");
kafkaParams.put("key.deserializer", StringDeserializer.class);
kafkaParams.put("value.deserializer", StringDeserializer.class);
kafkaParams.put("group.id", "groupStreamId");
kafkaParams.put("auto.offset.reset", "latest");
kafkaParams.put("enable.auto.commit", false);
Я получаю такие результаты:
�179.20.119.53�����Z
Может кто-нибудь указать мне, как исправить мою проблему?
Я также пытаюсь использоватьByteArrayDeserializer и преобразовать bytes [] в строку, но я всегда получаю плохие результаты символов.