消费者工程
- application.yml文件配置rabbitmq相关信息
- 创建消息处理类,用于接收队列中的消息并进行处理
搭建测试项目
maven工程的pom文件
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.4.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--springboot-rabbitmq启动依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
<version>2.2.1.RELEASE</version>
</dependency>
</dependencies>
application配置文件
基本和生产者相同,因为两者连接的是同一个rabbitmq的同一个虚拟机的同一个交换机的同一个队列
#端口
server:
port: 9912
#rabbitmq配置
spring:
rabbitmq:
host: 127.0.0.1
port: 5672
virtual-host: /ql_test
username: ql
password: 123456
启动类
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @Description: springboot整合rabbitmq----消费者工程
* @author: qinlei
* @date: 2020年05月26日 15:32
*/
@SpringBootApplication
public class ConsumerApplication {
public static void main(String[] args) {
SpringApplication.run(ConsumerApplication.class,args);
}
}
消费者监听类
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
/**
* @Description: TODO
* @author: qinlei
* @date: 2020年05月26日 15:35
*/
@Component
public class MyListener {
//这里的数据类型需与生产者发送的消息的类型一致
@RabbitListener(queues = "ql_queue")
public void getMessage(String msg){
System.out.println("消费者消费的消息:"+msg);
}
}