From: Kai Moritz Date: Sun, 15 Mar 2026 10:01:00 +0000 (+0100) Subject: Stand der erarbeiteten Lösung für die Übung "Fire & Forget" X-Git-Tag: grundlagen/simple-producer--fire+forget--vorlage--2026-03--vor-branchumbenennung--springframework X-Git-Url: https://juplo.de/gitweb/?a=commitdiff_plain;h=22e65d37e46c7119bb3a178f538173296149c555;p=demos%2Fkafka%2Ftraining Stand der erarbeiteten Lösung für die Übung "Fire & Forget" --- diff --git a/src/main/java/de/juplo/kafka/ExampleProducer.java b/src/main/java/de/juplo/kafka/ExampleProducer.java index ad713726..5589c358 100644 --- a/src/main/java/de/juplo/kafka/ExampleProducer.java +++ b/src/main/java/de/juplo/kafka/ExampleProducer.java @@ -25,14 +25,15 @@ public class ExampleProducer String topic, String clientId) { - // TODO: - // Instanziierung des KafkaProducer aus Ihrer bisherigen Implementierung - // Hier: - // - Instanz in this.producer ablegen - // - Das Attribut broker des Konstruktors für bootstrap.servers verwenden + Properties props = new Properties(); + props.put("bootstrap.servers", broker); + props.put("client.id", clientId); // Nur zur Wiedererkennung + props.put("key.serializer", StringSerializer.class.getName()); + props.put("value.serializer", StringSerializer.class.getName()); this.id = clientId; this.topic = topic; + producer = new KafkaProducer<>(props); } public void run() @@ -43,9 +44,15 @@ public class ExampleProducer { for (; running; i++) { - // Versenden der Nachrichten aus Ihrer bisherigen Implementierung - // Hier: - // - Zählen Sie außerdem die versendeten Nachrichten in this.produced + final ProducerRecord record = new ProducerRecord<>( + topic, // Topic + Long.toString(i%10), // Key + Long.toString(i) // Value + ); + + producer.send(record); + + produced++; } } catch (Exception e)