簡體   English   中英

SQS 接收器 - Spring Boot

[英]SQS Receiver - Spring Boot

我試圖使用下面的代碼在我的 Spring Boot 應用程序中創建一個 SQS 隊列偵聽器

AmazonSQSAsyncClient amazonSQSAsyncClient= new AmazonSQSAsyncClient(getProfileCredentialsProvider());

但是 AmazonSQSAsyncClient 似乎已被棄用。 是否有不同的方式使用 builder 來創建這個對象?

這個怎么樣?

AmazonSQSAsyncClientBuilder.standard()
                .withCredentials(getProfileCredentialsProvider())
                .build();

JavaDocs中確實提到了這一點:

* @deprecated use {@link AmazonSQSAsyncClientBuilder#withCredentials(AWSCredentialsProvider)}
 */
@Deprecated
public AmazonSQSAsyncClient(AWSCredentialsProvider awsCredentialsProvider) {

對於那些正在尋找定義偵聽器的標准方法的人。

在您的應用程序中包含spring-cloud-aws-messaging ,注意不要包含spring-cloud-aws-started-messaging

然后,您可以使用兩種創建偵聽器的方法:

@SqsListener(value = "logical queue name")

並以編程方式

@Autowired
private SimpleMessageListenerContainer simpleMessageListenerContainer;
...
simpleMessageListenerContainer.start("logical queue name");

spring 將為您處理 AmazonSQS 客戶端的創建。

注意:對於@SqsListener注釋,您需要@EnableSqs

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM