创建生产者:
public KafkaProducer<String, String> producer;
// 传⼊brokerList,以hostname:port的⽅式,多个之间⽤,号隔开
public KafkaProducerUtil(String brokerList) {
Properties props = new Properties();
// 服务器ip:端⼝号,集群⽤逗号分隔
props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, brokerList);
// key序列化指定类
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG,
StringSerializer.class.getName());
// value序列化指定类
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG,
StringSerializer.class.getName());
// ⽣产者对象
producer = new KafkaProducer<String, String>(props);
}
ProducerRecord参数说明:
topic—记录将被附加到的主题
partition—将记录发送到的分区
timestamp—记录的时间戳,从epoch开始的毫秒数。如果为空,⽣产者将使用System.currentTimeMillis()分配时间戳。
key—将包含在记录中的密钥
value—记录内容 headers-将包含在记录中的标头