RocketMQ的基本使用
第一步导入依赖:
<!--Springboot 集成 RocketMQ依赖--> <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-spring-boot-starter</artifactId> <version>2.0.3</version> </dependency> <!--RocketMQ依赖 一般与上者二选一看环境--> <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <version>4.6.0</version> </dependency>
<!--对应的hutool工具包 -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.5.2</version>
</dependency>
第二步:注入MQ
// 定义消息体 HashMap<String, Object> map = new HashMap<>(); map.put("cname", username); map.put("ctype", 0); // 0代表登录失败 1 代表登录成功 map.put("ctime", new Date()); // 发送MQ消息 mqTemplate.convertAndSend("userlog", map);
#提供者 rocketmq.name-server=192.168.31.81:9876 rocketmq.producer.group=maike #消费者 rocketmq.name-server=192.168.31.80:9876
rocketmq.producer.group=maike2
server.port=8083 防止端口冲突
代码实现需要注意:
发消息:
rocketMQTemplate.convertAndSend("maike-sso-login", map);
//需要实现这个接口 topic与发送者一样
@RocketMQMessageListener(topic = "maike-sso-login",
consumerGroup = "maike-login-info")
public class UserLoginConsumer implements RocketMQListener<String> {
}
然后可以用hutool的工具包 JSONUtil.parseObj(msg)转成对象 按照对应类型去拿值,代码如下
public void onMessage(String msg) { //转json 拿到数据 JSONObject jsonObject = JSONUtil.parseObj(msg);
//传的时候传什么类型,就用什么类型取 Long userId = jsonObject.getLong("id"); Date loginDate = jsonObject.getDate("date"); String address = jsonObject.getStr("address"); String gender = jsonObject.getStr("gender");
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)