【rabbitMQ】springboot整合rabbitMQ模拟简单收发消息

目录

1.创建项目和模块

2.添加rabbitMQ依赖

3.启动rabbitMQ服务

4.引入rabbitMQ服务端信息

5.通过单元测试模拟业务发送消息

6. 接收消息


1.创建项目和模块

2.添加rabbitMQ依赖

<!-- rabbitmq依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>

3.启动rabbitMQ服务

登录

4.引入rabbitMQ服务端信息

spring:
  rabbitmq:
    port: 5672
    host: localhost
    username: guest       rabbitMQ服务端账号
    password: guest       rabbitMQ服务端密码  
    virtual-host: /       虚拟机地址 

rabbitMQ服务端用户和虚拟机操作可参考

https://blog.csdn.net/m0_67930426/article/details/134905566

5.消费者监听队列 

package com.example.consumer.mqListener;


import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

@Slf4j
@Component
public class Listener {

    @RabbitListener(queues = "bbb.queue")
    public void bbb(String msg){
        System.out.println("消费者收到了bbb.queue的消息:【"+msg+"】");


    }
}

运行 

 

6.通过单元测试模拟业务发送消息

package com.example.publisher;

import org.junit.jupiter.api.Test;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
public class SendMessage {


    @Autowired
    private RabbitTemplate rabbitTemplate;


    @Test
    void  TestSend(){
        String queueName="aaa.queue";
        String msg="我正在使用rabbitMQ";
        rabbitTemplate.convertAndSend(queueName,msg);

    }


}

运行成功

 

如果队列未接收到msg,很可能是交换机未绑定该队列

因为生产者发送消息,经过交换机,再到队列,最终由消费者监听,接收消息

交换机绑定队列可以参考

https://blog.csdn.net/m0_67930426/article/details/134904365?spm=1001.2014.3001.5501

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/244352.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PCIe设备热插拔-理论篇

硬件层面理解热插拔 PRSNT1#和PRSNT2#信号与PCIe设备的热插拔相关。在基于PCIe总线的Add-in 卡中&#xff0c;PRSNT1# 和PRSNT2#信号直接相连&#xff0c;而在处理器主板中&#xff0c;PRSNT1#信号接地&#xff0c;而PRSNT2#信号通过上 拉电阻接为高。 不同的处理器系统处理PC…

刘家窑中医医院鲁卫星主任:冬季守护心脑血管,为社区居民送去健康关爱

随着冬季的来临&#xff0c;气温逐渐降低&#xff0c;心脑血管疾病的风险也随之增加。为了提高公众对心脑血管疾病的认知和预防意识&#xff0c;北京刘家窑中医医院于近日成功举办了冬季守护心脑血管公益义诊活动。 本次义诊活动主要针对社区居民中的中老年人&#xff0c;特别是…

微服务技术 RabbitMQ SpringAMQP P61-P76

B站学习视频https://www.bilibili.com/video/BV1LQ4y127n4?p61&vd_source8665d6da33d4e2277ca40f03210fe53a 文档资料: 链接&#xff1a;https://pan.baidu.com/s/1P_Ag1BYiPaF52EI19A0YRw?pwdd03r 提取码&#xff1a;d03r 一 初始MQ 1. 同步通讯 2. 异步通讯 3. MQ常…

聊聊Api接口优化的几个方法!

我负责的系统到2021年初完成了功能上的建设&#xff0c;开始进入到推广阶段。随着推广的逐步深入&#xff0c;收到了很多好评的同时也收到了很多对性能的吐槽。刚刚收到吐槽的时候&#xff0c;我们的心情是这样的&#xff1a; 当越来越多对性能的吐槽反馈到我们这里的时候&…

《对话品牌》——科技与时尚的融合

本期节目《对话品牌》栏目组邀请到了江西先禾服饰有限公司董事长吁火兰女士参加栏目录制&#xff0c;分享其企业故事&#xff0c;树立品牌形象&#xff0c;提升品牌价值&#xff01; 节目嘉宾&#xff1a;吁火兰 节目主持人&#xff1a;杨楠 节目播出平台&#xff1a;中央新…

MagicAnimate:Temporally consistent human image animation using diffusion model

1.Introduction 本文研究了任务形象动画人物&#xff0c;旨在根据特定的运动序列生成一个具有特定参考身份的视频。现有的人物图像动画的数据驱动方法可以基于所使用的生成主干模型分为两类&#xff0c;1.基于GAN&#xff0c;通常使用变形函数将参考图变形为目标姿态&#xff0…

AnimateAnything:Fine-grained open domain image animation with motion guidance

1.Introduction 本文旨在借助视频扩散模型的motion prior来解决开放领域图像动画问题&#xff0c;提出了一种可控扩散图像动画方法&#xff0c;能够在保留细节的同时对图像中的任意对象进行动画处理。为了增强用户对动画过程的控制能力&#xff0c;引入了motion area guidance和…

kafka支持外网访问

kafka支持外网访问 1.kafka正常部署之后如果不修改&#xff0c;外网是无法访问的&#xff0c;具体如下&#xff08;这里是单节点&#xff09; 2.这个时候需要修改kafka的config中的server.properties中的 listeners 修改为0.0.0.0 监控所有网卡&#xff0c;advertised.listene…

汽车软件大时代,如何提升软件工程创新力?

当前&#xff0c;传统汽车产业正加速数字化转型&#xff0c;“软件定义汽车”不断深化。在电动化、智能化和网联化趋势下&#xff0c;汽车软件已经成为汽车技术革新和发展的核心驱动力之一。根据亿欧智库发布的《2023中国智能电动汽车车载软件市场分析报告》&#xff0c;2022年…

Leetcode—783.二叉搜索树节点最小距离【简单】

2023每日刷题&#xff08;五十八&#xff09; Leetcode—783.二叉搜索树节点最小距离 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ void dfs(struct TreeNode* roo…

为什么要用向量检索

之前写过一篇文章&#xff0c;是我个人到目前阶段的认知&#xff0c;所做的判断。我个人是做万亿级数据的搜索优化工作的。一直在关注任何和搜索相关的内容。 下一代搜索引擎会什么&#xff1f;-CSDN博客 这篇文章再来讲讲为什么要使用向量搜索。 在阅读这篇文章之前呢&#xf…

云原生之深入解析网络服务Istio、eBPF和RSocket Broker

一、服务治理 ① “服务治理”简介 在微服务时代&#xff0c;一个复杂的应用程序被分解为多个组件化、协作和连接的单元&#xff0c;服务往往会承担越来越多的业务责任&#xff0c;这使得服务治理的难度前所未有&#xff0c;仅仅依靠微服务框架级的治理是不够的&#xff0c;构…

腾讯云Elasticsearch Service产品体验

基本介绍 产品概述 腾讯云 Elasticsearch Service&#xff08;ES&#xff09;是云端全托管海量数据检索分析服务&#xff0c;拥有高性能自研内核&#xff0c;集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群&#xff0c;也支持免运维、自动弹性、按需…

SQL进阶 | 外连接

概述 外连接的进阶用法在行列转换中比较有优势&#xff0c;往往存在需要把数据库中的格式转换成报表格式&#xff0c;但是SQL仅仅只是查询数据的语言&#xff0c;格式转换并不是原本的用途。 全外连接 标准 SQL 里定义了外连接的三种类型&#xff0c;如下所示。 左外连接&…

基于ssm生活缴费系统及相关安全技术的设计与实现论文

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对生活缴费信息管理混乱&#xff0c;出错率高&#xff0c;信息安全性差…

HTTP/2 快速重置 DDOS 漏洞几乎影响所有网站

一种新形式的DDOS的细节&#xff0c;它需要相对最少的资源来发起前所未有的规模的攻击&#xff0c;这使得网站成为一个明显的危险&#xff0c;因为服务器软件公司竞相发布补丁来防范它。 HTTP/2 快速重置漏洞 该漏洞利用了 HTTP/2 和 HTTP/3 网络协议&#xff0c;这些协议允许…

JavaScipt验证URL新方法(2023 年版)

JavaScript诞生以来&#xff0c;一直没有一种简单的方法验证URL&#xff0c;现在JavaScript新增了一个新方法——URL.canParse。 URL.canParse(https://www.stefanjudis.com); // true URL.canParse(www.stefanjudis.com); // falseURL.canParse() 是一种快速验证字符串是否为…

开源 Serverless 框架 Laf 性能优化实践

介绍 Laf 是一个完全开源的 Serverless 框架&#xff0c;Laf 的 Node.js 运行时容器 (以下简称为 Runtime) 是 Laf 的函数执行环境&#xff0c;依托于 Express.js 框架。采用容器进程常驻的方式&#xff0c;每一个应用对应于一个或多个容器 (弹性伸缩下)&#xff0c;底层使用了…

雅典娜Athena-signa音频算法源码与麦克风阵列角度定义互换问题

雅典娜Athena-signa音频算法源码与麦克风阵列角度定义互换问题 是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,+群赠送语音信号处理降噪算法,蓝牙耳机音频,DSP音频项目核心开发资料, 1 dios_ssp_doa_api.c 2 公…

网站提示不安全

当我们在浏览网站时&#xff0c;可能会遇到浏览器提示网站不安全的情况。这种提示可能源于网站缺乏有效的SSL证书&#xff0c;从而导致用户的个人信息和数据容易受到攻击和窃取。当网站使用SSL证书时&#xff0c;浏览器会显示一个小锁图标&#xff0c;并且网站的URL会以“https…