Delen via


Een blobcontainer verwijderen en herstellen met Java

In dit artikel wordt beschreven hoe u containers verwijdert met de Azure Storage-clientbibliotheek voor Java. Als u voorlopig verwijderen van containers hebt ingeschakeld, kunt u verwijderde containers herstellen.

Vereisten

  • In dit artikel wordt ervan uitgegaan dat u al een project hebt ingesteld voor gebruik met de Azure Blob Storage-clientbibliotheek voor Java. Zie Aan de slag met Azure Storage en Java voor meer informatie over het instellen van uw project, inclusief pakketinstallatie, het toevoegen van import instructies en het maken van een geautoriseerd clientobject.
  • Het autorisatiemechanisme moet machtigingen hebben om een blobcontainer te verwijderen of om een voorlopig verwijderde container te herstellen. Zie de autorisatierichtlijnen voor de volgende REST API-bewerkingen voor meer informatie:

Een container verwijderen

Als u een container in Java wilt verwijderen, gebruikt u een van de volgende methoden uit de BlobServiceClient klasse:

U kunt ook een container verwijderen met behulp van een van de volgende methoden uit de BlobContainerClient klasse:

Nadat u een container hebt verwijderd, kunt u gedurende ten minste 30 seconden geen container met dezelfde naam maken. Als u probeert een container met dezelfde naam te maken, mislukt de HTTP-foutcode 409 (Conflict). Alle andere bewerkingen in de container of de blobs die deze bevat, mislukken met HTTP-foutcode 404 (Not Found).

In het volgende voorbeeld wordt een BlobServiceClient object gebruikt om de opgegeven container te verwijderen:

public void deleteContainer(BlobServiceClient blobServiceClient, String containerName) {
    // Delete the container using the service client
    blobServiceClient.deleteBlobContainer(containerName);
}

In het volgende voorbeeld ziet u hoe u alle containers verwijdert die beginnen met een opgegeven voorvoegsel:

public void deleteContainersWithPrefix(BlobServiceClient blobServiceClient) {
    ListBlobContainersOptions options = new ListBlobContainersOptions()
            .setPrefix("container-");

    // Delete the container with the specified prefix using the service client
    for (BlobContainerItem containerItem : blobServiceClient.listBlobContainers(options, null)) {
        BlobContainerClient containerClient = blobServiceClient.getBlobContainerClient(containerItem.getName());
        containerClient.delete();
    }
}

Een verwijderde container herstellen

Wanneer voorlopig verwijderen van containers is ingeschakeld voor een opslagaccount, kunnen een verwijderde container en de inhoud ervan worden hersteld binnen een opgegeven bewaarperiode. Zie Voorlopig verwijderen voor containers inschakelen en beheren voor meer informatie over voorlopig verwijderen van containers. U kunt een voorlopig verwijderde container herstellen door de volgende methode van de BlobServiceClient klasse aan te roepen:

In het volgende voorbeeld wordt een verwijderde container gevonden, de versie van die verwijderde container ophaalt en vervolgens de versie doorgegeven aan de undeleteBlobContainer methode om de container te herstellen.

public void restoreContainer(BlobServiceClient blobServiceClient) {
    ListBlobContainersOptions options = new ListBlobContainersOptions();
    options.getDetails().setRetrieveDeleted(true);

    // Delete the container with the specified prefix using the service client
    for (BlobContainerItem deletedContainerItem : blobServiceClient.listBlobContainers(options, null)) {
        BlobContainerClient containerClient = blobServiceClient
                .undeleteBlobContainer(deletedContainerItem.getName(), deletedContainerItem.getVersion());
    }
}

Resources

Zie de volgende resources voor meer informatie over het verwijderen van een container met behulp van de Azure Blob Storage-clientbibliotheek voor Java.

REST API-bewerkingen

De Azure SDK voor Java bevat bibliotheken die zijn gebaseerd op de Azure REST API, zodat u kunt communiceren met REST API-bewerkingen via bekende Java-paradigma's. De clientbibliotheekmethoden voor het verwijderen of herstellen van een container maken gebruik van de volgende REST API-bewerkingen:

Codevoorbeelden

Clientbibliotheekbronnen

Zie ook