RocketMQ整合SpringBoot普通消息

CSDN 2024-08-03 16:05:14 阅读 78

<!--匹配服务器的RocketMQ5.3.0-->

<dependency>

<groupId>org.apache.rocketmq</groupId>

<artifactId>rocketmq-spring-boot-starter</artifactId>

<version>2.3.1</version>

</dependency>

application.properties

<code>spring.application.name=springboot-rocketmq

server.port=8999

rocketmq.name-server=xxx.xxx.xxx:9876

rocketmq.producer.group=mq_producer_group_test

控制器

package com.example.springbootrocketmq.controller;

import com.example.springbootrocketmq.pojo.User;

import com.example.springbootrocketmq.producer.RocketMQProducerService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

/**

* @author hrui

* @date 2024/8/2 11:40

*/

@RestController

@RequestMapping("/api/test")

public class TestController {

@Autowired

private RocketMQProducerService producerService;

@GetMapping("/send")

public String sendMessage() {

User user = new User("Hrui", 18, "China");

producerService.sendSimpleMessage("mq_test-topic", user);

return "消息发送成功";

}

}

 

生产者

package com.example.springbootrocketmq.producer;

import com.example.springbootrocketmq.pojo.User;

import jakarta.annotation.Resource;

import org.apache.rocketmq.spring.core.RocketMQTemplate;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;

/**

* @author hrui

* @date 2024/8/2 11:36

*/

@Service

public class RocketMQProducerService {

@Autowired

private RocketMQTemplate rocketMQTemplate;

/**

* 发送普通消息

* @param topic

* @param message

*/

public void sendSimpleMessage(String topic, User message) {

rocketMQTemplate.convertAndSend(topic, message);

}

}

消费者

package com.example.springbootrocketmq.consumer;

import com.example.springbootrocketmq.pojo.User;

import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;

import org.apache.rocketmq.spring.core.RocketMQListener;

import org.springframework.stereotype.Service;

/**

* @author hrui

* @date 2024/8/2 11:44

*/

@Service

@RocketMQMessageListener(topic = "mq_test-topic", consumerGroup = "mq_consumer_group_test")

public class RocketMQConsumerService implements RocketMQListener<User> {

@Override

public void onMessage(User user) {

System.out.println("消费者接收到消息: " + user);

}

}



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。