黑马十次方项目day05-06之主题测试
开发环境
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","主题模式发送消息!!!");
}
控制台打印如下,代表三个队列都能接收到消息.