奇技淫巧:如何给项目中的RabbitMQ添加总开关

news2025/5/23 18:06:34
本文主要分享了如何给项目中的RabbitMQ添加总开关,通过简单配置开/关RabbitMQ。
一、需求背景
SpringBoot项目里使用了RabbitMQ,但某些场景下,不希望项目启动时自动检查RabbitMQ连接
例如: 在开发不需要RabbitMQ的功能过程中,若RabbitMQ服务未启动,会导致SpringBoot项目启动失败。
二、实现方案
1.排除org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration(2种方式)
在SpringBootApplication启动类上使用exclude排除
@SpringBootApplication(exclude = {RabbitAutoConfiguration.class})

或者在yaml中配置

spring:
  autoconfigure:
    exclude: org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration
2.自定义RabbitMQ自动配置类
RabbitCondition是开关控制类(template.enable.rabbitmq=false表示关闭RabbitMQ)
application.yml配置
spring:
  rabbitmq:
    addresses: localhost:5672
    username: guest
    password: guest
    virtual-host: /
    publisherConfirms: true # 回调ConfirmCallback实现类
    publisherReturns: true # 回调ReturnCallback实现类
    
template:
  enable:
    rabbitmq: false # RabbitMQ开关
这种情况下启动SpringBoot项目就不会初始化RabbitMQ的相关内容了
怎么样?如果你觉得有用的话,还不快快收藏起来!!!
附:涉及的代码目录
github: GitHub - 897665787/springcloud-template: 一个基于springcloud netflix微服务框架,记录了关于微服务开发的一些最佳应用,欢迎大家学习指导。
gitee: springcloud-template: 一个基于springcloud netflix微服务框架,记录了关于微服务开发的一些最佳应用,欢迎大家学习指导。
springcloud-template
└── template-framework
     └── autoconfigure
          └── RabbitAutoConfiguration-- 自定义RabbitMQ自动配置类

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python的课后练习总结4(for循环)

1,for循环 for 临时变量 in 序列: 重复执行的代码1 重复执行的代码2 ........... 遍历序列 字符串 我是中国人 列表 [‘星期一,星期二,星期三,星期四] 元组 (‘星期一,星期二,星期三,星期四) 一,break 终止循环 二,con…

【C初阶——指针2】鹏哥C语言系列文章,基本语法知识全面讲解——指针(2)

崩刃的剑,依旧致命,锈蚀的盾,屹立如初(王者荣耀李信) 本文由睡觉待开机原创,转载请注明出处。 本内容在csdn网站首发 欢迎各位点赞—评论—收藏 如果存在不足之处请评论留言,共同进步&#xff0…

能翻页的电子图册怎么做

​随着科技的进步,电子图册已经成为了越来越多企业宣传和展示产品的重要工具。相比于传统的纸质图册,电子图册具有更多的优点,如方便携带、易于分享、可交互性强等。那么,如何制作一款能翻页的电子图册呢? 一、确定主题…

INT201各种题型收集

汇总一下 FA 有穷自动机 - RL正则语言 DFA M (Q, Σ, δ, q, F) Q 是有限状态集合(Finite Set of States): 这表示自动机中存在一个有限数量的不同状态。每个状态代表了自动机在某个特定时刻的内部状态。这些状态可以用符号或名称表示。 …

基于多反应堆的高并发服务器【C/C++/Reactor】(中)Buffer的创建和销毁

TcpConnection:封装的就是建立连接之后得到的用于通信的文件描述符,然后基于这个文件描述符,在发送数据的时候,需要把数据先写入到一块内存里边,然后再把这块内存里边的数据发送给客户端,除了发送数据,剩下…

内存的基础知识-第四十天

目录 什么是内存?内存的作用 常用的数量单位 指令的工作原理 思考 三种装入方式 绝对装入 可重定位装入(静态重定位) 动态运行时装入(动态重定位) 写程序到程序运行 编译和链接 链接的三种方式 本节思维导…

代码随想录27期|Pthon|Day31|贪心算法|理论基础|455.分发饼干|376. 摆动序列|53. 最大子序和

理论基础 首先,贪心算法基本靠“做题感觉”,所以没有规范的总结和做题技巧,只能说见到过之后还能想起来。 一般情况可以看成是对于一个大的问题的子问题的局部最优的求解,然后可以推导出全局的最优。 这个过程没有证明&#xf…

数据库中的几种锁

数据库锁 1.数据库锁的种类 以 mysql innoDB 为例,数据库的锁有 排他锁,共享锁,意向锁,自增锁,间隙锁,锁的范围有包括,行锁,表锁 ,区间锁。 从应用研发的视角&#xff…

Gromacs WARNING问题

上述示例中,NA 是对系统净电荷进行中和的阳离子。请根据您的系统特性和仿真需求调整这些值。 总体而言,这个警告是为了提醒您关于电荷中性化的问题,确保您的模拟结果更加物理可信。 收敛性未达到预期精度: 警告指出,优…

普中STM32-PZ6806L开发板(HAL库函数实现-访问多个温度传感器DS18B20)

简介 我们知道多个DS18B20的DQ线是可以被挂在一起的, 也就是一根线上可以访问不同的DS18B20而不会造成数据错乱, 怎么做到的,其实数据手册都有说到, 就是靠64-bit ROM code 进行识别, 也可以理解成Serial Number进行识别, 因为主要差异还是在Serial Numb…

成为一名合格的软件测试工程师,得掌握什么技能?

在这个信息时代,软件行业的需求空前增长,而软件测试工程师作为软件开发过程中的重要角色,也越来越受企业的重视。那么,成为一名合格的软件测试工程师需要掌握什么技能呢?我结合多年的教学经验为大家总结出以下几点。 …

Fast and flexible X-ray tomography using the ASTRA toolbox

使用ASTRA工具箱进行快速灵活的X射线断层扫描 论文链接:http://dX.doi.org/10.1364/OE.24.025129 项目链接:https://astra-toolboX.com/indeX.html Abstract 从一系列投影图像中重建物体,如在计算机断层扫描(CT)中,是许多不同应…

nuxt3 env文件、全局变量处理

有两种方向 通过配置nuxt.config.ts Nuxt提供的钩子函数,实现全局变量的获取 runtimeconfig env文件往runtimeconfig放入内容 useAppConfig 通过env文件配置来获取服务端全局变量,客户端通过vite.define实现 nuxt.config.ts Nuxt钩子 1. runtim…

Unity ab包如何加密

「ab包」全称为 AssetBundle ,是Unity提供的一种资源存储压缩包。其中储存了游戏的资源,如图片、模型、纹理、音视频、代码等文件。 由于ab包具有灵活储存、支持热更、包体较小且便于管理等优势,已经成为了市面上主流的游戏资源压缩方式。 …

李沐机器学习系列4---全连接层到卷积

1 从全连接到卷积 1.1 平移不变性 从概率分布的角度来看卷积的定义, f ( τ ) f(\tau) f(τ)是概率密度, g ( t − τ ) g(t-\tau) g(t−τ)是在这个分布下的均值 ( f ∗ g ) ( t ) ∫ − ∞ ∞ f ( τ ) g ( t − τ ) d τ (f*g)(t)\int_{-\infin}^{\infin}f(\t…

2024/01/02 每日AI必读资讯

减少LLM幻觉的方法 这篇论文总结了减少LLM幻觉的32种方法,包括RAG、微调模型,提示词工程等。 论文:https://arxiv.org/abs/2401.01313E5-mistral-7b-instruct:使用合成数据训练的Embedding模型 亮点是仅使用LLM生成的数据即可实现…

指令流水线的计算

我们需要知道以下公式: 设指令的条数为 n,指令执行需要 m 个阶段,时钟周期为 t 不采用流水线执行的时间:T1 n x m x t; 采用流水线执行的时间:T2 m x t (n - 1) x t; 加速比 S T1 / T2&…

PTA——逆序的三位数

程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。 输入格式: 每个测试是一个3位的正整数。 输出格式: 输出按位逆序…

MacOS M1/M2 Go Debug 配置

前言 换电脑,Go 环境带来一些麻烦,耽误很多时间,稍作记录。 原始电脑是 Mac 旧款,CPU x86 构型,新电脑 M2,因为旧电脑里本地文件很多,为了简化搬迁,还是用了 Mac 自带的迁移&#x…

LeetCoed刷题:21. 合并两个有序链表

题目: 是否独立解出:否 解题时的思路与想法:解题时有几个问题: 1.怎么遍历两个数组,嵌套两个while循环不能实现(后面通过看题解知道list1!null&&list2!null) …