🧑💻作者名称:DaenCode
🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。
😎人生感悟:尝尽人生百味,方知世间冷暖。
📖所属专栏:SpringBoot实战
系列文章目录
以下是专栏部分内容,更多内容请前往专栏查看!
标题 |
---|
一文带你学会使用SpringBoot+Avue实现短信通知功能(含重要文件代码) |
一张思维导图带你学会Springboot创建全局异常、自定义异常 |
一张思维导图带你打通SpringBoot自定义拦截器的思路 |
28个SpringBoot项目中常用注解,日常开发、求职面试不再懵圈 |
一张思维导图带你学会SpringBoot、Vue前后端分离项目线上部署 |
一张流程图带你学会SpringBoot结合JWT实现登录功能 |
一张思维导图带你学会使用SpringBoot中的Schedule定时发送邮件 |
一张思维导图带你学会使用SpringBoot异步任务实现下单校验库存 |
一张思维导图带你学会SpringBoot使用AOP实现日志管理功能 |
专栏推荐
- 专门为Redis入门打造的专栏,包含Redis基础知识、基础命令、五大数据类型实战场景、key删除策略、内存淘汰机制、持久化机制、哨兵模式、主从复制、分布式锁等等内容。
链接>>>>>>>>>
《Redis从头学》 - 专门为RabbitMQ入门打造的专栏,持续更新中。。。。。。。。
链接>>>>>>>
《图解RabbitMQ》
文章目录
- 系列文章目录
- 专栏推荐
- 🌟项目创建
- 🌟POM文件
- 🌟配置文件修改
- 🌟测试是否整合成功
- 🌟RabbitTemplate常用API
- 🌟写在最后
🌟项目创建
1.进入网址springboot项目创建
2.创建项目,选择相关信息,注意JDK选择8版本。这里依赖添加RabbitMQ和Spring Web。图中漏了Spring Web。
3.生成压缩包并解压,使用IDEA打开。
🌟POM文件
如果是在原有项目上整合,引入以下依赖即可。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.amqp</groupId>
<artifactId>spring-rabbit-test</artifactId>
<scope>test</scope>
</dependency>
🌟配置文件修改
#整合rabbitmq
spring.rabbitmq.host=192.168.124.23
spring.rabbitmq.port=5672
spring.rabbitmq.virtual-host= /dev
spring.rabbitmq.username=admin
spring.rabbitmq.password=password
🌟测试是否整合成功
测试用例编写,发送消息。
@Autowired
RabbitTemplate rabbitTemplate;
@Test
void contextLoads() {
rabbitTemplate.convertAndSend("生产消息");
}
通过登录web管控台,可以看出有消息的发送和消费过程。rabbitmq消息默认是自动确认的。
🌟RabbitTemplate常用API
- 发送消息:
convertAndSend(String exchange, String routingKey, Object message)
:将消息发送到指定的交换机和路由键。convertAndSend(String exchange, String routingKey, Object message, MessagePostProcessor messagePostProcessor)
:在发送消息之前对消息进行后处理。convertAndSend(String exchange, String routingKey, Object message, CorrelationData correlationData)
:将消息发送到指定的交换机和路由键,并关联一个 correlationData。send(String exchange, String routingKey, Message message)
:发送原始的 AMQP 消息对象。
- 接收消息:
receive(String queueName)
:从指定队列接收消息,并在没有消息时立即返回 null。receiveAndConvert(String queueName)
:从指定队列接收消息,并将消息转换为指定类型的对象。basicConsume(String queue, ChannelAwareMessageListener listener)
:基于底层的 Channel 消费队列中的消息,并使用指定的监听器处理接收到的消息。
- 手动确认:
basicAck(long deliveryTag, boolean multiple)
:手动确认消息的接收。将 deliveryTag 对应的消息标记为已确认。如果 multiple 为 true,则确认所有小于等于 deliveryTag 的消息。basicNack(long deliveryTag, boolean multiple, boolean requeue)
:手动否认消息的接收。将 deliveryTag 对应的消息标记为未确认,可以选择是否将消息重新放回队列。basicReject(long deliveryTag, boolean requeue)
:手动拒绝消息的接收。将 deliveryTag 对应的消息标记为未确认,并选择是否将消息重新放回队列。
- 消息可靠机制:
setCorrelationKey(Message message, byte[] correlationKey)
:设置消息的关联键(correlation key)。setReturnCallback(ReturnCallback returnCallback)
:设置消息发送失败时的回调函数。setConfirmCallback(ConfirmCallback confirmCallback)
:设置消息发送确认的回调函数。
🌟写在最后
有关于SpringBoot整合RabbitMQ图文过程以及RabbitTemplate常用API介绍到此就结束了。感谢大家的阅读,希望大家在评论区对此部分内容散发讨论,便于学到更多的知识。