目录
进入idea官网:IntelliJ IDEA 下载最新版idea(安装及其他问题请参考其他大佬的文章)
2.将jdk路径配置到windows环境变量下(JAVA_HOME),并将其添加到path中
6.点击“新建”,添加“%JAVA_HOME%\bin”到其中
1.进入Zookeeper官网:Apache ZooKeeper下载最新稳定版 Zookeeper,下载完后进行解压
2.将Zookeeper路径配置到windows环境变量下(ZOOKEEPER_HOME),并将其添加到path中(方法同上)
编辑3.进入Zookeeper目录,在Zookeeper目录下新建名为“dataDir”和“dataLogDir"的文件夹(名称可修改)
编辑4.进入Zookeeper目录下的conf目录,重命名“zoo_sample.cfg"文件为“zoo.cfg",然后打开该文件
5.修改其中的 dataDir路径和dataLogDir路径为刚才新建的dataDir和dataLogDir文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出
1.进入Kafka官网:Apache Kafka下载最新版Kafka
2.将Kafka路径配置到windows环境变量下(KAFKA_HOME),并将其添加到path中(方法同上)
编辑4.进入Kafka目录,在Kafka目录下新建名为“data”的文件夹(名称可修改)
编辑5.进入Kafka目录下的config目录,进入server.properties文件
6.修改其中的log.dirs目录为刚才新建的data文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出
(1)进入ZooKeeper目录下的bin目录,单击上方路径栏,输入“cmd”进入命令行
(2)命令行中输入“zkServer”启动Zookeeper
(1)进入Kafka目录下,单击上方路径栏,输入“cmd”进入命令行
(2)命令行中输入“bin\windows\kafka-server-start.bat config\server.properties"启动Kafka
(3)出现类似下图则为启动成功(如果运行不成功,可能是server.properties文件中有错误)
编辑5.新建完成项目后,左侧找到“pom.xml”,添加依赖到dependency下(如果报红可以重启几次Idea)
编辑6.左侧找到“src”,一直展开到“org.example”包下(名称可能不一样)
8.分别新建名称为ConsumerSample和ProducerSample的Java类
先运行Consumer代码,再运行Producer代码。然后返回Consumer,出现以下结果则为成功
一.下载并安装Idea:
进入idea官网:IntelliJ IDEA 下载最新版idea(安装及其他问题请参考其他大佬的文章)
二.下载并安装JDK:
1.进入idk官网:JDK 下载最新版jdk
2.将jdk路径配置到windows环境变量下(JAVA_HOME),并将其添加到path中
*配置环境变量具体方法:
1.单击windows键
2.搜索“环境变量”
3.在下方“系统变量”中点击“新建”
4.复制并粘贴文件的具体路径到下方
5.然后找到系统环境变虽中的“path”,双击进入
6.点击“新建”,添加“%JAVA_HOME%\bin”到其中
7.一直点击“确定”直到退出界面
三.安装并配置ZooKeeper:
1.进入ZooKeeper官网:Apache ZooKeeper下载最新稳定版 ZooKeeper,下载完后进行解压
2.将ZooKeeper路径配置到windows环境变量下(ZOOKEEPER_HOME),并将其添加到path中(方法同上)

3.进入ZooKeeper目录,在ZooKeeper目录下新建名为“dataDir”和“dataLogDir"的文件夹(名称可修改)

4.进入ZooKeeper目录下的conf目录,重命名“zoo_sample.cfg"文件为“zoo.cfg",然后打开该文件
5.修改其中的 dataDir路径和dataLogDir路径为刚才新建的dataDir和dataLogDir文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出
四.安装并配置Kafka:
1.进入Kafka官网:Apache Kafka下载最新版Kafka
2.将Kafka路径配置到windows环境变量下(KAFKA_HOME),并将其添加到path中(方法同上)

4.进入Kafka目录,在Kafka目录下新建名为“data”的文件夹(名称可修改)

5.进入Kafka目录下的config目录,进入server.properties文件
6.修改其中的log.dirs目录为刚才新建的data文件夹的路径(注意将右斜杠“\”换为左斜杠“/”),保存退出
五.启动ZooKeeper和Kafka:
1.启动ZooKeeper
(1)进入ZooKeeper目录下的bin目录,单击上方路径栏,输入“cmd”进入命令行
(2)命令行中输入“zkServer”启动ZooKeeper
(3)出现类似下图则为启动成功
2.启动Kafka
(1)进入Kafka目录下,单击上方路径栏,输入“cmd”进入命令行
(2)命令行中输入“bin\windows\kafka-server-start.bat config\server.properties"启动Kafka
(3)出现类似下图则为启动成功(如果运行不成功,可能是server.properties文件中有错误)
六.在Idea中配置消费者和生产者:
1.进入Idea,新建项目
2.选择Spring,选择Maven,点击下一步
4.选择Web选项中的Spring Web,点击创建

5.新建完成项目后,左侧找到“pom.xml”,添加依赖到dependency下(如果报红可以重启几次Idea)
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
</dependency>

6.左侧找到“src”,一直展开到“org.example”包下(名称可能不一样)
7.右键选择新建,然后选择Java类
8.分别新建名称为ConsumerSample和ProducerSample的Java类
9.然后在其中输入以下代码
(1)ConsumerSample:
import org.apache.kafka.clients.consumer.Consumer;
import org.apache.kafka.clients.consumer.ConsumerRecord;
import org.apache.kafka.clients.consumer.ConsumerRecords;
import org.apache.kafka.clients.consumer.KafkaConsumer;
import java.util.Arrays;
import java.util.Properties;
public class ConsumerSample {
public static void main(String[] args) {
String topic = "test-topic";
Properties props = new Properties();
props.put("bootstrap.servers", "localhost:9092");
props.put("group.id", "testGroup1");
props.put("enable.auto.commit","true");
props.put("auto.commit.interval.ms","1000");
props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
props.put("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
Consumer<String, String> consumer = new KafkaConsumer(props);
consumer.subscribe(Arrays.asList(topic));
while (true) {
ConsumerRecords<String, String> records = consumer.poll(100);
for (ConsumerRecord<String, String> record : records)
System.out.printf("partition = %d, offset = %d, key = %s, value = %s%n", record.partition(), record.offset(), record.key(), record.value());
}
}
}
(2)ProducerSample:
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.Producer;
import org.apache.kafka.clients.producer.ProducerRecord;
import java.util.HashMap;
import java.util.Map;
public class ProducerSample {
public static void main(String[] args) {
Map<String, Object> props = new HashMap<String,Object>();
props.put("bootstrap.servers", "localhost:9092");
props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
props.put("key.deserializer","org.apache.kafka.common.serialization.StringDeserializer");
props.put("value.deserializer","org.apache.kafka.common.serialization.StringDeserializer");
props.put("zk.connect", "127.0.0.1:2181");
String topic = "test-topic";
Producer<String, String> producer = new KafkaProducer<String, String>(props);
producer.send(new ProducerRecord<String, String>(topic, "key01", "这是我的第1条测试消息"));
producer.send(new ProducerRecord<String, String>(topic, "key02", "这是我的第2条测试消息"));
producer.send(new ProducerRecord<String, String>(topic, "key03", "这是我的第3条测试消息"));
producer.close();
}
}
先运行Consumer代码,再运行Producer代码。然后返回Consumer,出现以下结果则为成功
这是本人第一次分享经验,有不足的地方欢迎各位大佬指出!感谢!!