Kafka中如何创建消费者Consumer已经在前面给大家详细的讲解过,那么如何使用JAVA来消费topic中的数据呢呢,今天就说说。
还是先创建一个topic,拥有一个副本和一个分区
kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
示例:
自动提交offset
public class MyConsumer{
public static void main(String[] args) {
Properties prop = new Properties();
prop.put("bootstrap.servers", "node01:9092,node02:9092,node03:9092");
//或者
prop.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG,"192.168.5.150:9092");
prop.put("group.id", "testGroup1"); //必须要组名
//或者
prop.put(ConsumerConfig.GROUP_ID_CONFIG,"testGroup1");
prop.put("enable.auto.commit", "true");//默认值true 指定为自动提交offset
//或者
prop.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, "true");
prop.put("auto.commit.interval.ms", "1000");//默认值5000
//或者
prop.put(ConsumerConfig.AUTO_COMMIT_INTERVAL_MS_CONFIG, "1000");
prop.put(auto.offset.reset, "earliest"); //相当于从开始读 --from-beginning
//或者
prop.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest");
//反序列化
prop.