SpringAMQP RabbitMQ how to send directly to Queue

2019-05-11 15:27发布

问题:

I'm using SpringAMQP with Rabbit template. How to send messages directly to Queues omitting Exchange? How can i do it?

回答1:

How can i do it?

You can't; publishers don't know about queues; just exchanges and routing keys.

However, all queues are bound to the default exchange ("") with the queue name as its routing key.

If you are using Spring AMQP's RabbitTemplate, it is configured to publish to the default exchange by default, so you can use

convertAndSend("myQueue", "foo")`

Or even...

template.setDefaultRoutingKey("myQueue");

then

template.convertAndSend("foo");

or

template.send(aMessage);