繁体   English   中英

在Spring Boot AMQP中为RabbitMQ配置ConnectionFactory

[英]Configuring ConnectionFactory for RabbitMQ in Spring Boot AMQP

TL; DR如何以编程方式创建Spring Boot AMQP连接工厂?

嘿,

为了连接到RabbitMQ,我将它们添加到了Spring Boot应用application.properties文件中:

spring.rabbitmq.host=host
spring.rabbitmq.port=5672
spring.rabbitmq.username=myapp
spring.rabbitmq.password=mypass

根据我的理解,这些值然后用于创建Spring Boot的自动配置的ConnectionFactory ,然后将其用于:

@Bean
@Conditional(RabbitCondition.class)
SimpleMessageListenerContainer container(ConnectionFactory connectionFactory, MessageListenerAdapter completedOrderListenerAdapter) {
    SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
    container.setConnectionFactory(connectionFactory);
    container.setQueueNames(completedOrderQueueName);
    container.setMessageListener(completedOrderListenerAdapter);
    return container;
}

我希望能够使用不是application.properties不同环境文件中的rabbitMQ凭据,因此我想以编程方式创建ConnectionFactory bean。 我该如何实现?

谢谢。

@Bean
public ConnectionFactory connectionFactory() {
    CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
    connectionFactory.setAddresses(address);
    connectionFactory.setUsername(username);
    connectionFactory.setPassword(password);
    return connectionFactory;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM