Créer un conteneur d’objet blob avec .NET
Les objets BLOB dans le stockage Azure sont organisés en conteneurs. Avant de pouvoir télécharger un objet BLOB, vous devez d’abord créer un conteneur. Cet article explique comment créer des conteneurs en utilisant la bibliothèque de client du Stockage Azure pour Java.
Prérequis
- Abonnement Azure : créez-en un gratuitement
- Compte de stockage Azure : créez un compte de stockage
- Kit de développement Java (JDK) version 8 ou ultérieure (nous recommandons la version 17 pour une expérience optimale)
- Apache Maven est utilisé pour la gestion de projet dans cet exemple
Paramétrer votre environnement
Si vous n’avez pas de projet existant, cette section vous montre comment configurer un projet pour qu’il fonctionne avec la bibliothèque de client Stockage Blob Azure pour Java. Pour plus d’informations, consultez Bien démarrer avec Stockage Blob Azure et Java.
Pour utiliser les exemples de code de cet article, effectuez les étapes suivantes pour configurer votre projet.
Remarque
Cet article utilise l’outil de génération Maven pour générer et exécuter l’exemple de code. D’autres outils de génération, comme Gradle, fonctionnent également avec le Kit de développement logiciel (SDK) Azure pour Java.
Installer des packages
Ouvrez le fichier pom.xml
dans votre éditeur de texte. Installez les packages en incluant le fichier de marque d’ordre d’octet ou en incluant une dépendance directe.
Ajouter des instructions import
Ajoutez les instructions import
suivantes :
import com.azure.storage.blob.*;
Autorisation
Le mécanisme d’autorisation doit disposer des autorisations nécessaires pour créer un conteneur. Pour l’autorisation avec Microsoft Entra ID (recommandé), vous devez disposer au minimum du rôle RBAC Azure intégré Contributeur aux données Blob du stockage. Pour en savoir plus, consultez les conseils d’autorisation pour l’opération Create Container (API REST).
Créer un objet client
Pour connecter une application au Stockage Blob, créez une instance de BlobServiceClient.
L’exemple suivant utilise BlobServiceClientBuilder pour générer un objet BlobServiceClient
en utilisant DefaultAzureCredential
, et montre comment créer si nécessaire des clients de conteneur et de blob :
// Azure SDK client builders accept the credential as a parameter
// TODO: Replace <storage-account-name> with your actual storage account name
BlobServiceClient blobServiceClient = new BlobServiceClientBuilder()
.endpoint("https://<storage-account-name>.blob.core.windows.net/")
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
// If needed, you can create a BlobContainerClient object from the BlobServiceClient
BlobContainerClient containerClient = blobServiceClient
.getBlobContainerClient("<container-name>");
// If needed, you can create a BlobClient object from the BlobContainerClient
BlobClient blobClient = containerClient
.getBlobClient("<blob-name>");
Pour en savoir plus sur la création et la gestion d’objets clients, consultez Créer et gérer des objets clients qui interagissent avec des ressources de données.
À propos de la dénomination des conteneurs
Un nom de conteneur doit être un nom DNS valide, car il fait partie de l’URI unique utilisé pour adresser le conteneur ou ses objets BLOB. Suivez ces règles lorsque vous nommez un conteneur :
- Les noms de conteneur doivent comprendre entre 3 et 63 caractères.
- Les noms de conteneur doivent commencer par une lettre ou un chiffre, et peuvent comporter uniquement des lettres minuscules, des chiffres et des tirets (-).
- Deux tirets consécutifs ne sont pas autorisés dans les noms de conteneurs.
L’URI d’une ressource de conteneur est mis en forme comme suit :
https://my-account-name.blob.core.windows.net/my-container-name
Créez un conteneur.
Pour créer un conteneur, utilisez l’une des méthodes suivantes de la classe BlobServiceClient
:
Vous pouvez également créer un conteneur à l’aide de l’une des méthodes suivantes de la classe BlobContainerClient
:
Les conteneurs sont créés immédiatement sous le compte de stockage. Il n’est pas possible d’imbriquer un conteneur sous un autre. Pour les méthodes create
et createBlobContainer
, une exception est levée s’il existe un conteneur du même nom.
L’exemple suivant crée un conteneur à partir d’un objet BlobServiceClient
:
public BlobContainerClient createContainer(BlobServiceClient blobServiceClient, String containerName) {
// Create the container using the service client object
BlobContainerClient blobContainerClient = blobServiceClient.createBlobContainer(containerName);
return blobContainerClient;
}
Créer le conteneur racine
Un conteneur racine sert de conteneur par défaut pour votre compte de stockage. Chaque compte de stockage peut avoir un conteneur racine, qui doit être nommé $root. Le conteneur racine doit être créé ou supprimé de manière explicite.
Vous pouvez référencer un objet BLOB stocké dans le conteneur racine sans inclure le nom du conteneur racine. Le conteneur racine vous permet de référencer un objet BLOB au niveau supérieur de la hiérarchie du compte de stockage. Par exemple, vous pouvez référencer un blob qui réside dans le conteneur racine de la manière suivante :
https://accountname.blob.core.windows.net/default.html
L’exemple suivant crée un objet BlobContainerClient
avec le nom de conteneur $root, puis crée le conteneur s’il n’existe pas déjà dans le compte de stockage :
public void createRootContainer(BlobServiceClient blobServiceClient) {
// Creates a new BlobContainerClient object by appending the containerName to
// the end of the URI
BlobContainerClient blobContainerClient = blobServiceClient.getBlobContainerClient("$root");
// If the container does not already exist, create it using the container client
blobContainerClient.createIfNotExists();
}
Ressources
Pour en savoir plus sur la création d’un conteneur à l’aide de la bibliothèque cliente Stockage Blob Azure pour Java, consultez les ressources suivantes.
Exemples de code
Opérations de l'API REST
Le Kit de développement logiciel (SDK) Azure pour Java contient des bibliothèques qui s'appuient sur l'API REST Azure, vous permettant d’interagir avec les opérations de l’API REST par le biais de paradigmes Java familiers. Les méthodes de bibliothèque cliente pour créer un conteneur utilisent l’opération d’API REST suivante :
- Create Container (API REST)
Ressources de bibliothèque cliente
- Documentation de référence sur la bibliothèque cliente
- Code source de la bibliothèque de client
- Package (Maven)
Contenu connexe
- Cet article fait partie du guide pour les développeurs Stockage Blob pour Java. Pour découvrir plus d’informations, consultez la liste complète des articles du guide du développeur dans Générer votre application Java.