JavaでKafkaにメッセージを送信する方法は何ですか?

Kafkaにメッセージを送信するには、KafkaのプロデューサーAPIを使用する必要があります。以下は、Javaを使用してKafkaにメッセージを送信する方法を示す簡単なサンプルコードです。

import org.apache.kafka.clients.producer.Producer;
import org.apache.kafka.clients.producer.ProducerRecord;
import org.apache.kafka.clients.producer.KafkaProducer;
import java.util.Properties;

public class KafkaProducerExample {
    public static void main(String[] args) {
        // Kafka 服务器的地址和端口
        String bootstrapServer = "localhost:9092";
        // 消息的主题
        String topic = "test-topic";

        // 设置生产者的配置属性
        Properties props = new Properties();
        props.put("bootstrap.servers", bootstrapServer);
        props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");

        // 创建 Kafka 生产者实例
        Producer<String, String> producer = new KafkaProducer<>(props);

        try {
            // 发送一条消息到 Kafka
            String message = "Hello, Kafka!";
            producer.send(new ProducerRecord<>(topic, message));
            System.out.println("消息发送成功: " + message);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // 关闭 Kafka 生产者
            producer.close();
        }
    }
}

上記の例では、最初にKafkaサーバーのアドレスとポート、およびメッセージを送信するトピックを設定しました。次に、必要な構成プロパティを含むPropertiesオブジェクトを作成しました。その後、これらの構成プロパティを使用してKafkaのプロデューサーインスタンスを作成しました。最後に、sendメソッドを使用してKafkaにメッセージを送信し、コンソールに送信成功のメッセージを表示しました。最後に、Kafkaのプロデューサーをクローズしました。

このサンプルコードを自分のニーズに合わせて変更や拡張することができます。

bannerAds