springboot集成rocketmq的示例代码
SpringBoot集成RocketMQ可以通过使用spring-boot-starter-rocketmq或者rocketmq-spring-boot-starter等第三方启动器来简化配置。以下是一个使用rocketmq-spring-boot-starter的示例代码,展示如何在SpringBoot项目中集成RocketMQ。
首先,你需要在你的pom.xml文件中添加对rocketmq-spring-boot-starter的依赖:
【xml】
org.apache.rocketmq
rocketmq-spring-boot-starter
2.2.0
然后,在你的application.yml或application.properties文件中配置RocketMQ的相关信息:
【yaml】
rocketmq:
name-server: 127.0.0.1:9876 # RocketMQ NameServer 地址
producer:
group: my-producer-group # 生产者组名
consumer:
group: my-consumer-group # 消费者组名
接下来,创建一个生产者类来发送消息:
【java】
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class ProducerController {
@Autowired
private RocketMQTemplate rocketMQTemplate;
@GetMapping("/send")
public String sendMessage(@RequestParam String message) {
rocketMQTemplate.convertAndSend("my-topic", message);
return "Message sent: " + message;
}
}
再创建一个消费者类来接收消息:
【java】
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.stereotype.Service;
@Service
@RocketMQMessageListener(topic = “my-topic”, consumerGroup = “my-consumer-group”)
public class ConsumerService implements RocketMQListener {
@Override
public void onMessage(String message) {
System.out.println("Received message: " + message);
// 在这里处理接收到的消息
}
}
确保你的RocketMQNameServer和Broker已经启动,并且127.0.0.1:9876是你的NameServer地址。如果你使用的是远程的RocketMQ集群,请替换为相应的地址。
现在,你可以启动你的SpringBoot应用,并通过访问http://localhost:8080/send?message=HelloRocketMQ来发送消息。你应该能够在控制台中看到消费者接收并打印出消息。
请注意,上述示例是一个简单的演示,实际生产环境中可能需要更多的配置和处理,比如错误处理、消息重试、幂等性处理等。
原文地址:https://blog.csdn.net/weixin_42594143/article/details/143577884
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!