专栏首页JAVA乐园SpringBoot集成RockMQ

SpringBoot集成RockMQ

阅读文本大概需要3分钟。

0x01:pom.xml文件引入

<!--add dependency in pom.xml-->
<dependency>
    <groupId>org.apache.rocketmq</groupId>
    <artifactId>rocketmq-spring-boot-starter</artifactId>
    <version>${RELEASE.VERSION}</version>
</dependency>

具体版本号:

https://mvnrepository.com/artifact/org.apache.rocketmq/rocketmq-spring-boot-starter

0x02:修改配置文件application.properties

rocketmq.name-server=127.0.0.1:9876
rocketmq.producer.group=my-group

配置中的127.0.0.1:9876根据具体情况修改成实际的RocketMQ的NameServer地址与端口

0x03:消息生产者

@Service
public class ProducerService{

    @Resource
    private RocketMQTemplate rocketMQTemplate;

    public void sendMessage(String message) throws Exception {
          //send message synchronously
        rocketMQTemplate.convertAndSend("test-topic", message);
    }

}

0x04:消息消费者

@Slf4j
@Service
@RocketMQMessageListener(topic = "test-topic", 
consumerGroup = "my-group")
public class MessageConsumer implements RocketMQListener<String>{
    public void onMessage(String message) {
        log.info("received message: {}", message);
    }
}

0x05:SpringBoot启动类

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

@SpringBootApplication
public class MQApplication {

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

0x06:测试用例

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest
public class TestSpringRocketMQ {

    @Autowired
    private ProducerService producerService;

    @Test
    public void testSendMessage() {
        producerService.sendMsg("Hello RocketMQ Message");
    }

}
官网:https://github.com/apache/rocketmq-spring

本文分享自微信公众号 - JAVA乐园(happyhuangjinjin88),作者:java乐园

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-06-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • SpringBoot处理全局统一异常

    0x01:使用@ControllerAdvice和@ExceptionHandler注解

    java乐园
  • 这就是命令,命令模式

    在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个, 我们只需在程序运行时指定具体的请求接收者即可,此时,可...

    java乐园
  • Nginx系列:数据压缩

    【Nginx系列:Nginx源码安装】中源码安装Nginx时,讲到需要安装zlib和zlib-devel是因为两个库提供了压缩功能,而Nginx的ngx_htt...

    java乐园
  • 单元测试_JUnit常用单元测试注解介绍及代码演示

    https://pan.baidu.com/s/1OUNC0kZNduXJJLbpw76GZA

    授客
  • SpringBoot整合 ActiveMQ快速入门 实现点对点推送

    ActiveMQ是一个高性能的消息服务, 它已经实现JMS接口(Java消息服务(Java Message Service),Java平台中关于面向消息中间件的...

    憧憬博客
  • Feign 如何支持进行文件上传

    最近,别的项目组提出需要SDK,就利用Feign做了一个,在此期间发现上传文件是一个坑,正常的实现是无法支持文件上传,需要进行对资源有一个Convert。为了避...

    迹_Jason
  • SpringCloud技术指南系列(十二)API网关之Gateway使用

    API网关是一个更为智能的应用服务器,它的定义类似于面向对象设计模式中的Facade模式,它的存在就像是整个微服务架构系统的门面一样,所有的外部客户端访问都需要...

    品茗IT
  • Spring boot with Scheduling

    本文节选自《Netkiller Java 手札》 http://www.netkiller.cn/java/spring/boot/index.html 11....

    netkiller old
  • Spring Cloud Hystrix - 服务容错

    在微服务架构中,由于某个服务的不可用导致一系列的服务崩溃,被称之为雪崩效应。所以防御服务的雪崩效应是必不可少的,在Spring Cloud中防雪崩的利器就是Hy...

    端碗吹水
  • vue + typescript 类组件教程

    TypeScript 是 JavaScript 的强类型版本。然后在编译期去掉类型和特有语法,生成纯粹的 JavaScript 代码。由于最终在浏览器中运行的仍...

    公众号---人生代码

扫码关注云+社区

领取腾讯云代金券