publicstaticvoidmain(finalString...args)throwsException{ConnectionFactorycf=newCachingConnectionFactory();// set up the queue, exchange, binding on the brokerRabbitAdminadmin=newRabbitAdmin(cf);Queuequeue=newQueue("myQueue");admin.declareQueue(queue);TopicExchangeexchange=newTopicExchange("myExchange");admin.declareExchange(exchange);admin.declareBinding(BindingBuilder.bind(queue).to(exchange).with("foo.*"));// set up the listener and containerSimpleMessageListenerContainercontainer=newSimpleMessageListenerContainer(cf);Objectlistener=newObject(){publicvoidhandleMessage(Stringfoo){System.out.println(foo);}};MessageListenerAdapteradapter=newMessageListenerAdapter(listener);container.setMessageListener(adapter);container.setQueueNames("myQueue");container.start();// send somethingRabbitTemplatetemplate=newRabbitTemplate(cf);template.convertAndSend("myExchange","foo.bar","Hello, world!");Thread.sleep(1000);container.stop();}