在Web应用程序启动时使用Spring AMQP创建新队列

时间:2016-07-27 05:19:11

标签: queue rabbitmq spring-amqp

我正在尝试在我的Web应用程序的服务器启动时使用Spring AMQP在RabbitMQ中创建一个新队列。我没有得到确切的配置代码如何实现它。 以下是我的代码段。请更正以下内容。

@Configuration
public class RabbitMQConfiguration {

     @Bean
        public ConnectionFactory rabbitConnectionFactory() {
            CachingConnectionFactory connectionFactory = new CachingConnectionFactory("10.165.18.29");
            connectionFactory.setUsername("User");
            connectionFactory.setPassword("user");
            return connectionFactory;
        }

     @Bean
        public SimpleMessageListenerContainer messageListenerContainer() {
            SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
            container.setConnectionFactory(rabbitConnectionFactory());
            container.addQueueNames("create.queue");
            container.setMessageListener(exampleListener());
            return container;
        }

     @Bean
        public MessageListener exampleListener() {
            return new MessageListener() {
                public void onMessage(Message message) {
                    System.out.println("received: " + message);
                }
            };
        }
}

1 个答案:

答案 0 :(得分:0)

请参阅the documentation

只需添加<rabbit:queue ... />个bean和<rabbit:admin ... />,管理员就会在首次建立连接时自动声明队列。