栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

RocketMq整合springboot,demo示例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

RocketMq整合springboot,demo示例

一、window安装rocketmq: 1.1地址:http://rocketmq.apache.org/release_notes/release-notes-4.2.0/ 1.2选择‘Binary’进行下载 1.3解压已下载工程

2. 配置 2.1 系统环境变量配置

        变量名:ROCKETMQ_HOME

        变量值:MQ解压路径MQ文件夹名

2.2重启服务器 3. 启动 3.1 启动NAMESERVER

        Cmd命令框执行进入至‘MQ文件夹bin’下,然后执行‘start mqnamesrv.cmd’,启动NAMESERVER。成功后会弹出提示框,此框勿关闭。

3.2 启动BROKER

        Cmd命令框执行进入至‘MQ文件夹bin’下,然后执行‘start mqbroker.cmd -n 127.0.0.1:9876   -c ../conf/broker.conf  autoCreateTopicEnable=true’,启动BROKER。成功后会弹出提示框,此框勿关闭。


二、代码示例: 2.1 pom依赖:
 
        org.apache.rocketmq
        rocketmq-spring-boot-starter
        2.2.1
2.2代码:

   创建topic

import org.apache.rocketmq.client.exception.MQClientException;
import org.apache.rocketmq.client.producer.DefaultMQProducer;

public class RocketMQMgr {
    public static void main(String[] args) {
        DefaultMQProducer producer=new DefaultMQProducer("jason");

        producer.setNamesrvAddr("127.0.0.1:9876");

        try {
            producer.start();

            
            producer.createTopic("broker-a","test-topic",4);

            System.out.println("test-topic  创建成功!");

            producer.shutdown();
        } catch (MQClientException e) {
            e.printStackTrace();
        }

    }
}
2.3 springboot代码:

application.properties增加:

rocketmq:
  name-server: localhost:9876
  producer:
    group: ${spring.application.name}
    send-message-timeout: 30000
    access-key: rocketmq2
    secret-key: 12345678
    enable-msg-trace: true

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class BackendApplicationBootstrap {

    public static void main(String[] args) {
        SpringApplication.run(BackendApplicationBootstrap.class);
    }
}




import com.sep.tech.inf.service.DubboTestService;
import org.apache.dubbo.config.annotation.DubboReference;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class TestController {

    @DubboReference(version = "1.0.0",providedBy = "dubbo-web")
    private DubboTestService dubboTestService;

    @Autowired
    private RocketMQTemplate rocketMQTemplate;


    @GetMapping("dubboTest")
    public String dubboTest() {
        return dubboTestService.say("Hello world");
    }

    @GetMapping("push")
    public void push() {
        rocketMQTemplate.syncSend("test-topic", MessageBuilder.withPayload("test-topic"));
    }
}
 2.4 测试:

 日志:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/435105.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号