View a markdown version of this page

Travaillez avec Amazon Simple Queue Service files d'attente de messages - AWS SDK for Java 2.x

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Travaillez avec Amazon Simple Queue Service files d'attente de messages

Une file de messages est le conteneur logique utilisé pour envoyer des messages de manière fiable Amazon Simple Queue Service. Il existe deux types de files d'attente : standard et FIFO (premier entré, premier sorti). Pour en savoir plus sur les files d'attente et les différences entre ces types, consultez le Guide du Amazon Simple Queue Service développeur.

Cette rubrique explique comment créer, répertorier, supprimer et obtenir l'URL Amazon Simple Queue Service d'une file d'attente à l'aide du AWS SDK pour Java.

La sqsClient variable utilisée dans les exemples suivants peut être créée à partir de l'extrait suivant.

SqsClient sqsClient = SqsClient.create();

Lorsque vous créez un SqsClient à l'aide de la create() méthode statique, le SDK configure la région à l'aide de la chaîne de fournisseurs de régions par défaut et les informations d'identification à l'aide de la chaîne de fournisseurs d'informations d'identification par défaut.

Création d’une file d’attente

Utilisez la SqsClient’s createQueue méthode et fournissez un CreateQueueRequest objet qui décrit les paramètres de file d'attente, comme indiqué dans l'extrait de code suivant.

Importations

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;

Code

CreateQueueRequest createQueueRequest = CreateQueueRequest.builder() .queueName(queueName) .build(); sqsClient.createQueue(createQueueRequest);

Voir l'échantillon complet sur GitHub.

Répertorier les files d'attente

Pour répertorier les Amazon Simple Queue Service files d'attente de votre compte, appelez la SqsClient’s listQueues méthode avec un ListQueuesRequest objet.

Lorsque vous utilisez la forme de la listQueues méthode qui ne prend aucun paramètre, le service renvoie toutes les files d'attente, jusqu'à 1 000 files d'attente.

Vous pouvez fournir un préfixe de nom de file d'attente à l'ListQueuesRequestobjet pour limiter les résultats aux files d'attente qui correspondent à ce préfixe, comme indiqué dans le code suivant.

Importations

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;

Code

String prefix = "que"; try { ListQueuesRequest listQueuesRequest = ListQueuesRequest.builder().queueNamePrefix(prefix).build(); ListQueuesResponse listQueuesResponse = sqsClient.listQueues(listQueuesRequest); for (String url : listQueuesResponse.queueUrls()) { System.out.println(url); } } catch (SqsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); }

Voir l'échantillon complet sur GitHub.

Obtenir l'URL d'une file d'attente

Le code suivant montre comment obtenir l'URL d'une file d'attente en appelant la SqsClient’s getQueueUrl méthode avec un GetQueueUrlRequest objet.

Importations

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;

Code

GetQueueUrlResponse getQueueUrlResponse = sqsClient.getQueueUrl(GetQueueUrlRequest.builder().queueName(queueName).build()); String queueUrl = getQueueUrlResponse.queueUrl(); return queueUrl;

Voir l'échantillon complet sur GitHub.

Suppression d’une file d’attente

Fournissez l'URL de la file d'attente vers l'DeleteQueueRequestobjet. Appelez ensuite la SqsClient’s deleteQueue méthode pour supprimer une file d'attente comme indiqué dans le code suivant.

Importations

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.sqs.SqsClient; import software.amazon.awssdk.services.sqs.model.*; import java.util.List;

Code

public static void deleteSQSQueue(SqsClient sqsClient, String queueName) { try { GetQueueUrlRequest getQueueRequest = GetQueueUrlRequest.builder() .queueName(queueName) .build(); String queueUrl = sqsClient.getQueueUrl(getQueueRequest).queueUrl(); DeleteQueueRequest deleteQueueRequest = DeleteQueueRequest.builder() .queueUrl(queueUrl) .build(); sqsClient.deleteQueue(deleteQueueRequest); } catch (SqsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Voir l'échantillon complet sur GitHub.

En savoir plus

  • CreateQueuedans la référence de Amazon Simple Queue Service l'API

  • GetQueueUrldans la référence de Amazon Simple Queue Service l'API

  • ListQueuesdans la référence de Amazon Simple Queue Service l'API

  • DeleteQueuedans la référence de Amazon Simple Queue Service l'API