创建kafka消费者的代码如下:
1、构建配置参数
1.1 配置bootstrap.server 参数:hadoop102:9092--------指定kafka集群的地址,可以写多个,防止这个节点宕机无法运行
1.2 配置kafka接受的数据的k-v值的序列化参数
props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
props.put("value.deserializer","org.apache.kafka.common.serialization.StringDeserializer");
1.3 指定读取的数量(已经消费了100条)是从已经提交的offset(100)开始读取还是继续从最新的位置开始读取(此时里面在100之后,又新增了400条数据,但是从最新的数据开始读取的位置就是400+100开始读取)
props.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest");
1.4 指定提交分区的offset是自动提交还是手动提交
props.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, true);
1.5 指定消费的消费组《必须在消费的时候去指定》
props.put(ConsumerConfig.GROUP_ID_CONFIG, "CONF");
2、创建kafka consumer消费对象
KafkaConsumer<Object, Object> consumer = new KafkaConsumer<>(props);
3、指定consumer消费的主题
consumer.subscribe(Arrays.asList("test01"));
4、拉取数据
ConsumerRecords<Object, Object> records = consumer.poll(100);