大家好,又见面了,我是你们的朋友全栈君。
【java资源库】:http://www.gxcode.top/code
一.编写RabbitMQ入门案例
一.搭建项目
1.创建maven项目(springboot -jar)
2.修改pom.xml文件
org.springframework.boot
spring-boot-starter-parent
2.0.2.RELEASE
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-starter-amqp
3.创建application.properties文件,并添加rabbitmq配置信息
spring.application.name=springcloud-mq
spring.rabbitmq.host=192.168.70.131
spring.rabbitmq.port=5672
spring.rabbitmq.username=oldlu
spring.rabbitmq.password=123456
4.创建spring boot启动类
@SpringBootApplication
public class AppStart {
public static void main(String[] args) {
SpringApplication.run(AppStart.class, args);
}
}
二.编写代码
1.创建队列
//创建消息队列
@Configuration
public class QueueConfig {
//创建队列
@Bean
public Queue createQueue(){return new Queue(“hello-queue”);}
}
2.创建消息提供者
@Component
public class Sender {
@Autowired
private AmqpTemplate rabbitAmqpTemplate;
//发送消息的方法
public void send(String msg){
//向消息队列发送消息
//参数一:队列的名称。
//参数二:消息
this.rabbitAmqpTemplate.convertAndSend(“hello-queue”,msg);
}
}
3.消息接收者
@Component
public class Receiver {
// 接收消息的方法。采用消息队列监听机制
@RabbitListener(queues=“hello-queue”)
public void process(String msg){
System.out.println(“receiver: “+msg);
}
}
三.测试
1测试代码
//消息队列测试类
@RunWith(SpringRunner.class)
@SpringBootTest(classes=SpringbootServerApplication.class)
public class QueueTest {
@Autowired
private Sender sender;
//测试消息队列
@Test
public void test1(){
this.sender.send(“Hello RabbitMQ”);
}
}
3.Rabbitmq原理图
1.Message
消息。
2.Publisher
消息的生产者
3.Consumer
消息的消费者
4.Exchange
交换器。用来接收生产者发送的消息并将这些消息路由给服务器中的队列。
种常用的交换器类型
- direct(发布与订阅完全匹配)
- fanout(广播)
- topic(主题,规则匹配)
5.Binding
绑定。
6.Queue
消息队列。
7.Routing-key
路由键。
8.Connection
链接。指rabbit 服务器和服务建立的TCP 链接。
9.Channel
信道。
10.Virtual Host
虚拟主机
11.Borker
表示消息队列服务器实体
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126836.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...