SpringAMQP RabbitMQ如何在没有Exchange的情况下直接发送到Queue

mun*_*777 3 spring send rabbitmq spring-amqp spring-rabbitmq

我正在使用带有Rabbit模板的SpringAMQP.如何将邮件直接发送到省略Exchange的队列?我该怎么做?

Gar*_*ell 12

我该怎么做?

你不能; 出版商不了解排队; 只是交换和路由密钥.

但是,所有队列都绑定到默认的exchange(""),并将队列名称作为其路由键.

如果您使用的是Spring AMQP RabbitTemplate,则默认情况下会将其发布到默认交换,因此您可以使用

convertAndSend("myQueue", "foo")`
Run Code Online (Sandbox Code Playgroud)

甚至...

template.setDefaultRoutingKey("myQueue");
Run Code Online (Sandbox Code Playgroud)

然后

template.convertAndSend("foo");
Run Code Online (Sandbox Code Playgroud)

要么

template.send(aMessage);
Run Code Online (Sandbox Code Playgroud)