Air*_*ezx 4 java rabbitmq spring-amqp spring-boot
TL; DR如何以编程方式创建Spring Boot AMQP连接工厂?
嘿,
为了连接到RabbitMQ,我将它们添加到application.properties了Spring Boot应用程序的文件中:
spring.rabbitmq.host=host
spring.rabbitmq.port=5672
spring.rabbitmq.username=myapp
spring.rabbitmq.password=mypass
Run Code Online (Sandbox Code Playgroud)
根据我的理解,然后将这些值用于创建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;
}
Run Code Online (Sandbox Code Playgroud)
我希望能够使用不是的不同环境文件中的RabbitMQ凭证application.properties,因此我想以ConnectionFactory编程方式创建bean。我该如何实现?
谢谢。
@Bean
public ConnectionFactory connectionFactory() {
CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
connectionFactory.setAddresses(address);
connectionFactory.setUsername(username);
connectionFactory.setPassword(password);
return connectionFactory;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2381 次 |
| 最近记录: |