文章目录
- 创建主题模式
- 代码测试
开发环境 rabbitmq版本3.7.8 Erlang 20.3.8.5
创建主题模式在rabbitmq的控制台中,选择exchanges, 选择 add a new exchange 起名为topicfirst, 类型type选择为topic 只需选择这两个,其他的保持默认即可. 之后即可选择 add exchange按钮,进行添加. 点击topicfirst , 进行队列的绑定. 在如下信息中,进行队列的绑定和Routing key规则的编写. 如下图所示是已经绑定完了的.
在测试的代码中,进行主题模式的消息发送. 交换器选择为topicfirst
. 在rountingkey中填写为abc.log
, 那么匹配的是#.log的队列
@Test
public void sendTopicMsg(){
rabbitTemplate.convertAndSend("topicfirst","abc.log","主题模式发送消息!!!");
}
运行该测试方法, 并且启动RabbitApplication的主启动类,就能进行消息的发送与接收. 当发送上面的信息时,控制台打印如下 当测试代码修改为以
good.abc
作为routingkey时, 匹配的是good.#
@Test
public void sendTopicMsg(){
rabbitTemplate.convertAndSend("topicfirst","good.abc","主题模式发送消息!!!");
}
当测试的代码修改为如下的以good.log
作为routingkey时,能够匹配上三个队列
@Test
public void sendTopicMsg(){
rabbitTemplate.convertAndSend("topicfirst","good.log","主题模式发送消息!!!");
}
控制台打印如下,代表三个队列都能接收到消息.