使用Kafka的ProducerAPI可以向一個或多個Topic發送消息。
首先,需要創建一個Producer實例,并將Kafka集群的地址傳遞給它。可以通過指定一個或多個bootstrap.servers屬性來指定Kafka集群的地址。
Properties props = new Properties();
props.put("bootstrap.servers", "kafka1:9092,kafka2:9092");
props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
Producer<String, String> producer = new KafkaProducer<>(props);
接下來,可以使用Producer的send方法將消息發送到Topic。需要創建一個ProducerRecord實例,指定要發送的消息的Topic、消息的鍵和值。
String topic = "my-topic";
String key = "my-key";
String value = "Hello, Kafka!";
ProducerRecord<String, String> record = new ProducerRecord<>(topic, key, value);
producer.send(record);
最后,使用完Producer后需要調用close方法來關閉Producer并釋放相關資源。
producer.close();
以上代碼片段展示了如何向一個Topic發送一條消息。可以根據需求進行調整,例如發送多條消息、指定消息的分區、添加消息的回調函數等。