Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de Fabric, Power BI y SQL más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Los blobs de Azure Storage se organizan en contenedores. Antes de poder cargar un blob, primero debe crear un contenedor. En este artículo se muestra cómo crear contenedores con la biblioteca cliente de Azure Storage para Java.
Si no tiene un proyecto existente, en esta sección, se muestra cómo configurar un proyecto para que funcione con la biblioteca cliente de Azure Blob Storage para Java. Para más información, consulte Introducción a Azure Blob Storage y Java.
Para trabajar con los ejemplos de código de este artículo, siga los pasos siguientes a fin de configurar el proyecto.
Nota
En este artículo, se usa la herramienta de compilación de Maven para compilar y ejecutar el código de ejemplo. Otras herramientas de compilación, como Gradle, también funcionan con Azure SDK para Java.
Abra el archivo pom.xml
en el editor de texto. Instale los paquetes mediante la inclusión del archivo BOM o la inclusión de una dependencia directa.
Agregue las instrucciones siguientes import
:
import com.azure.storage.blob.*;
El mecanismo de autorización debe tener los permisos necesarios para crear un contenedor. Para la autorización con Microsoft Entra ID (recomendado) se necesita el rol integrado de RBAC de Azure de Colaborador de datos de Storage Blob o superior. Para obtener más información, consulte la guía de autorización para Crear contenedor (API de REST).
Para conectar una aplicación a Blob Storage, cree una instancia de BlobServiceClient.
En el ejemplo siguiente, se usa BlobServiceClientBuilder para crear un objeto BlobServiceClient
mediante DefaultAzureCredential
, y se muestra cómo crear clientes de contenedores y blobs, si es necesario:
// 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>");
Para obtener más información sobre cómo crear y administrar objetos de cliente, consulte Crear y administrar objetos de cliente que interactúan con los recursos de datos.
Un nombre de contenedor debe ser un nombre DNS válido, ya que forma parte del URI único que se usa para direccionar el contenedor o sus blobs. Siga estas reglas al asignar un nombre a un contenedor:
El URI de un recurso contenedor tiene el siguiente formato:
https://my-account-name.blob.core.windows.net/my-container-name
Para crear un contenedor, llame a uno de los métodos siguientes de la clase BlobServiceClient
:
También puede crear un contenedor mediante uno de los métodos siguientes de la clase BlobContainerClient
:
Los contenedores se crean inmediatamente debajo de la cuenta de almacenamiento. No es posible anidar un contenedor debajo de otro. Para los métodos create
y createBlobContainer
se genera una excepción si ya existe un contenedor con el mismo nombre.
En el ejemplo siguiente se crea un contenedor desde un objeto BlobServiceClient
:
public BlobContainerClient createContainer(BlobServiceClient blobServiceClient, String containerName) {
// Create the container using the service client object
BlobContainerClient blobContainerClient = blobServiceClient.createBlobContainer(containerName);
return blobContainerClient;
}
Un contenedor raíz sirve como contenedor predeterminado para la cuenta de almacenamiento. Cada cuenta de almacenamiento puede tener un contenedor raíz, que se debe denominar $root. El contenedor raíz debe crearse o eliminarse explícitamente.
Puede hacer referencia a un blob almacenado en el contenedor raíz sin incluir el nombre del contenedor raíz. El contenedor raíz permite hacer referencia a un blob en el nivel superior de la jerarquía de la cuenta de almacenamiento. Por ejemplo, se puede hacer referencia a un blob que esté en el contenedor raíz de la siguiente manera:
https://accountname.blob.core.windows.net/default.html
En el ejemplo siguiente se crea un nuevo objeto BlobContainerClient
con el nombre del contenedor $root y, a continuación, se crea el contenedor si aún no existe en la cuenta de almacenamiento:
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();
}
Para más información sobre cómo crear un contenedor con la biblioteca cliente de Azure Blob Storage para Java, consulte los recursos siguientes.
El SDK de Azure para Java contiene bibliotecas que se crean a partir de la API REST de Azure, lo que le permite interactuar con las operaciones de API REST a través de paradigmas conocidos de Java. Los métodos de la biblioteca cliente para crear un contenedor usan esta operación de API REST:
Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de Fabric, Power BI y SQL más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoy