RabbitMQ的安装下载
1.查询镜像
docker search rabbitmq:management
2.获取镜像
docker pull rabbitmq:management
3.运行镜像
方式一:默认guest用户,密码也是guest
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
方式二
:设置用户名和密码
docker run -d
–name my-rabbitmq
-p 5672:5672 -p 15672:15672
-v /data:/var/lib/rabbitmq
–hostname my-rabbitmq-host
-e RABBITMQ_DEFAULT_VHOST=my_vhost
-e RABBITMQ_DEFAULT_USER=admin
-e RABBITMQ_DEFAULT_PASS=admin
–restart=always
rabbitmq:management
1.安装好rabbitmq,登陆RabbitMQ管理平台,新增管理用户并设置权限
2.pom.xml添加rabbitmq依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
3.rabbitmq连接配置
server.port=8080
## rabbitmq config
spring.rabbitmq.host=192.168.199.144
spring.rabbitmq.port=5672
spring.rabbitmq.username=springboot
spring.rabbitmq.password=123456
// 与启动容器时虚拟主机名字一致~~~与启动容器时虚拟主机名字一致~~~与启动容器时虚拟主机名字一致~~~
spring.rabbitmq.virtual-host=my_vhost
4.创建Rabbit配置类RabbitConfig
配置类主要用来配置队列、交换器、路由等高级信息
@Configuration
public class RabbitConfig {
@Bean
public Queue firstQueue() {
// 创建一个队列,名称为:first
return new Queue("first");
}
}
5.创建消息产生者类
@Component
public class Sender {
@Autowired
private AmqpTemplate rabbitTemplate;
public void send() {
rabbitTemplate.convertAndSend("first", "test rabbitmq message !!!");
}
}
6.创建消息消费者
@RabbitListener注解:定义该类需要监听的队列
@RabbitHandler注解:指定对消息的处理
@Component
@RabbitListener(queues = "first")
public class Receiver {
@RabbitHandler
public void process(String msg) {
System.out.println("receive msg : " + msg);
}
}