首页 > 其他分享 >rocketMQ发送消息demo

rocketMQ发送消息demo

时间:2024-10-14 17:00:58浏览次数:7  
标签:topic spring demo boot 发送 rocketMQ 创建 rocketmq

在发送之前,需要先搭建好rocketMQ

之后便是创建两个springboot工程,一个是生产中producer生产者、另外一个是consumer消费者

一、生产者创建步骤:

1、通过idea创建一个springboot工程,在创建工程的时候,添加spring-boot-starter-web依赖即可

2、在pom.xml文件中添加rocketMQ相关依赖,注意需要和使用rocketMQ版本对应,我用的是4.7.1版本rocketMQ

    <dependency>
            <groupId>org.apache.rocketmq</groupId>
            <artifactId>rocketmq-spring-boot-starter</artifactId>
            <version>2.1.1</version>
        </dependency>

3、在application.properties里面添加rocketMQ相关配置

rocketmq.name-server=192.168.61.128:9876  #rocketMQ的ip地址
rocketmq.producer.group=my-boot-producer-group

4、创建一个生产者代码

@Component   //需要添加到spring容器中
public class MyProducer {

    @Autowired
    private RocketMQTemplate template;  使用这个这个方法

    /*
    * 发送简单消息
    * */
    public void sendMessage(String topic, String message){
        template.convertAndSend(topic,message);
    }


}

以上基本就定义好了生产者,可自行在业务代码中注入即可使用该方法。以下在测试类中尝试调用demo

@SpringBootTest
class MyBootProducerDemoApplicationTests {

    @Autowired
    private MyProducer myProducer;

    @Test
    void testSendMessage(){
        String topic = "my-boot-topic";
        String message = "hello rocket mq springboot message";
        myProducer.sendMessage(topic,message);
        System.out.println("消息发送成功~");
    }


}

 

二、创建消费者工程

1、通过idea创建一个springboot工程,在创建工程的时候,添加spring-boot-starter-web依赖即可。

2、在pom.xml文件中添加rocketMQ相关依赖,注意需要和使用rocketMQ版本对应,我用的是4.7.1版本rocketMQ

    <dependency>
            <groupId>org.apache.rocketmq</groupId>
            <artifactId>rocketmq-spring-boot-starter</artifactId>
            <version>2.1.1</version>
        </dependency>

3、在application.properties里面添加rocketMQ相关配置

rocketmq.name-server=192.168.61.128:9876   #rocketMQ的ip地址

4、创建消费者代码

@Component
@RocketMQMessageListener(consumerGroup = "my-boot-consumer-group1",topic = "my-boot-topic")  // 这第一个consumerGroup是自行定义的,就是消费组名称,topic是需要和生产者那一致。
public class MyConsume implements RocketMQListener<String> {

    @Override
    public void onMessage(String s) {
        System.out.println("消息为:"+ s);
    }
}

启动springboot工程即可,就会消费到刚在生产者那生产MQ消息。

 

以上内容纯属学习使用!

 

标签:topic,spring,demo,boot,发送,rocketMQ,创建,rocketmq
From: https://www.cnblogs.com/qwg-/p/18464563

相关文章

  • 如何用ajax发送post请求
    和get类似,稍作改动:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>AJAXPOST请......
  • sqlite 源码编译,并写一个 sqlite_demo程序。
    环境介绍:ubuntu系统cmake(cmake安装) (可以手动下载源码,编译安装,也可以使用系统最新的cmake安装)  一、下载源码并编译https://github.com/sqlite/sqlite/tree/vesion-3.45.1下载3.45.1的源码 sqlite-vesion-3.45.1.zip 解压 sqlite-vesion-3.45.1到当前目......
  • PROVE vs DEMONSTRATE
     WORD 1: PROVE  WORDW1W2  ADEPT1621  COUNTERPRODUCTIVE760  UNDOING760  DISAPPOINTING740  SHORT-LIVED710  SCARS670  BOON630  DISPROVE2412  FRUITLESS1161  FUTILE1131  UNS......
  • STM32与ESP32串口数据发送以及网页端数据实时显示和远程遥控
    目标:实现网页端速度实时显示以及可以通过点击页面按键达到对小车的位移方位控制。一、ESP32代码首先,需要让ESP32连接到WiFi,这样才能为后续的操作做准备。ssid="xxxxxx"password="xxxxxx"#WIFI连接defwifi_connect():wlan=network.WLAN(network.STA_IF)#STA模式......
  • 理解TON合约中的消息发送结构
    在开发TON合约时,消息的发送格式非常关键。特别是在使用TypeScript与TON合约交互时,我们会遇到这样的代码片段:asyncsend(provider:ContractProvider,via:Sender,args:{value:bigint,bounce?:boolean|null|undefined},message:string|Deploy){letbody:Ce......
  • 抖音直播间自动发送评论-唯一客服浏览器插件
    应用场景主流直播平台后台评论自动回复与循环发送话术某些客服平台网页端咨询消息自动回复功能介绍这是一个电脑端浏览器插件扩展,实现模拟人工收发消息,解放双手,摆脱重复工作利用浏览器多开,可以在一台电脑上运行多个浏览器,每个浏览器登录不同账号,同时运行插件。插件不限制直播或......
  • rocketMQ单机部署到Linux上
    主要包括几个步骤:1、上传zip包到Linux;2、在环境变量中配置rocketMQ信息;3、修改mq相关配置;4、启动服务一、下载zip包并且上传到Linux因为rocketMQ运行是需要java环境的,所以也需要下载jdk,总共需要两个文件,一个是jdk1.8,一个是rocketMQ4.7,注意版本对应jdk-8u191-linux-x64.tar.gz......
  • Spring Boot 集成 RabbitMQ 多个 Broker 发送、消费消息
    1.SpringBoot集成RabbitMQ多个Broker发送、消费消息1.1.版本说明1.2.概述1.3.RabbitMQ信息1.4.Spring配置1.5.定义常量1.6.定义配置属性1.7.定义两个ConnectionFactory1.8.定义两个RabbitTemplate1.9.定义两个SimpleRabbitListenerContainerFacto......
  • 第四十一章 发送方码率预估揭秘
    WebRTC使用的是GoogleCongestionControl(简称GCC)拥塞控制,目前有两种实现:旧的实现是接收方根据收到的音视频RTP报文,预估码率,并使用REMBRTCP报文反馈回发送方。*新的实现是在发送方根据接收方反馈的TransportFeedbackRTCP报文,预估码率。基于延迟的拥塞控制原理先来......
  • express的使用笔记 2 请求对象与响应对象 、 增删改查demo
    Express不对Node.js已有的特性进行二次抽象,只是在它之上扩展了web应用所需的基本功能。内部使用的依旧是http模块,请求对象继承字http.IncomingMessage,响应对象继承自http.ServerResponse,所以node.js官网中的对应的方法可以通用1.请求对象2.响应对象除了response.send(),resp......