<aws-messaging:annotation-driven-queue-listener />的基于Java的配置版本是什么?

pet*_*erl 5 java spring spring-boot spring-cloud spring-cloud-aws

根据最新版本的Spring Cloud AWS文档(http://cloud.spring.io/spring-cloud-aws/spring-cloud-aws.html),第5.2.3节指出,您需要QueueMessageHandler使用以下配置在传统的Spring XML配置中:

<aws-messaging:annotation-driven-queue-listener />
Run Code Online (Sandbox Code Playgroud)

您如何使用更现代的基于Java的配置来进行配置?

Nik*_*las 0

我在GitHub上找到了相关讨论,结论是还没有为该项目指定直接配置。

这两个 bean 定义应该能够替换上面提到的整个 XML 配置。但是,这取决于您要配置的详细信息。

@Bean
public SimpleMessageListenerContainerFactory simpleMessageListenerContainerFactory() {
    SimpleMessageListenerContainerFactory factory = new SimpleMessageListenerContainerFactory();        
    factory.setAmazonSqs(yourCustomClient);
    return factory;
}

@Bean
public QueueMessageHandlerFactory queueMessageHandlerFactory() {
    QueueMessageHandlerFactory factory = new QueueMessageHandlerFactory();
    factory.setAmazonSqs(yourCustomClient);
    return factory;
}
Run Code Online (Sandbox Code Playgroud)