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来发送消息。你应该能够在控制台中看到消费者接收并打印出消息。

请注意,上述示例是一个简单的演示,实际生产环境中可能需要更多的配置和处理,比如错误处理、消息重试、幂等性处理等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值