• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

SpringBoot中使用 RabbitMQ的教程详解

springboot 搞代码 4年前 (2022-01-09) 26次浏览 已收录 0个评论

本章主要建立在已经安装好Erlang以及RabbitMQ的基础上,接下来,简单介绍一下使用

一、Direct直接模式

通过routingKey和exchange决定的那个唯一的queue可以接收消息

1、首先到RabbitMQ的管理界面新建一个队列(Direct模式)

2、测试项目的基础结构如下:

这里为了方便测试,直接在父项目中建立两个子模块(生产者和消费者)

3、pom.xml文件的依赖如下:

父项目:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <packaging>pom</packaging>
 <modules>
  <module>rab-consumer</module>
  <module>rab-producer</module>
 </modules>
<p>本文来源gao!daima.com搞$代!码#网#</p> <parent>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>2.0.7.RELEASE</version>
  <relativePath/> <!-- lookup parent from repository -->
 </parent>
 <groupId>interview</groupId>
 <artifactId>rabbitmq-interview</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <name>rabbitmq-interview</name>
 <description>Demo rabbitmq project for Spring Boot</description>

 <properties>
  <java.version>1.8</java.version>
 </properties>

 <dependencies>
  <!--1、amqp高级消息队列的依赖-->
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-amqp</artifactId>
  </dependency>
		<!--2、测试的依赖-->
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
  </dependency>
  <dependency>
   <groupId>org.springframework.amqp</groupId>
   <artifactId>spring-rabbit-test</artifactId>
   <scope>test</scope>
  </dependency>
 </dependencies>

 <build>
  <plugins>
   <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
   </plugin>
  </plugins>
 </build>

</project>

4、准备发送的数据

回到IDEA中,打开子模块的生产者模块,我这边是rab_producer,在resource下建立springboot的配置文件:application.yml文件,内容如下:

spring:
 rabbitmq:
 host: localhost
# host 为RabbitMQ主机的地址

之后新建一个SpringBoot的启动类:

@SpringBootApplication
public class RabbitMQApplication {
 public static void main(String[] args) {
  SpringApplication.run(RabbitMQApplication.class);
 }
}

然后新建测试类:

@RunWith(SpringRunner.class) // 固定写法
@SpringBootTest(classes = RabbitMQApplication.class) // SpringBoot启动类(自定义的)
public class RabTest {
 @Autowired
 private RabbitTemplate rabbitTemplate; // 注入一个RabbitMQ的模板对象,操作消息队列的对象

 // 发送一条点对点(Direct)的消息,又称为直连
 @Test
 public void sendQueue(){
  System.out.println("开始向队列中发送一条消息!");
  // 参数1:管理中的队列名 参数2:发送的消息
  rabbitTemplate.convertAndSend("weiku","message:这是一条消息!");
  System.out.println("消息发送完毕!");
 }
}

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:SpringBoot中使用 RabbitMQ的教程详解

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址