Sdílet prostřednictvím


Odstranění a obnovení kontejneru objektů blob pomocí Javy

Tento článek ukazuje, jak odstranit kontejnery pomocí klientské knihovny azure Storage pro Javu. Pokud jste povolili obnovitelné odstranění kontejneru, můžete odstraněné kontejnery obnovit.

Požadavky

  • Tento článek předpokládá, že už máte projekt nastavený tak, aby fungoval s klientskou knihovnou služby Azure Blob Storage pro Javu. Další informace o nastavení projektu, včetně instalace balíčku, přidání import direktiv a vytvoření autorizovaného objektu klienta, najdete v tématu Začínáme se službou Azure Storage a Javou.
  • Autorizační mechanismus musí mít oprávnění k odstranění kontejneru objektů blob nebo obnovení obnovitelného odstraněného kontejneru. Další informace najdete v pokynech k autorizaci pro následující operace rozhraní REST API:

Odstranění kontejneru

Pokud chcete odstranit kontejner v Javě, použijte jednu z následujících metod ze BlobServiceClient třídy:

Kontejner můžete také odstranit pomocí jedné z následujících metod z BlobContainerClient třídy:

Po odstranění kontejneru nemůžete vytvořit kontejner se stejným názvem alespoň po dobu 30 sekund. Pokus o vytvoření kontejneru se stejným názvem selže s kódem 409 (Conflict)chyby HTTP . Jakékoli jiné operace v kontejneru nebo objektech blob, které obsahuje, selžou s kódem 404 (Not Found)chyby HTTP .

Následující příklad používá BlobServiceClient objekt k odstranění zadaného kontejneru:

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

Následující příklad ukazuje, jak odstranit všechny kontejnery, které začínají zadanou předponou:

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();
    }
}

Obnovení odstraněného kontejneru

Pokud je pro účet úložiště povolené obnovitelné odstranění kontejneru, může se odstraněný kontejner a jeho obsah obnovit během zadané doby uchovávání. Další informace o obnovitelném odstranění kontejnerů najdete v tématu Povolení a správa obnovitelného odstranění kontejnerů. Obnovitelně odstraněný kontejner můžete obnovit voláním následující metody BlobServiceClient třídy:

Následující příklad najde odstraněný kontejner, získá verzi tohoto odstraněného kontejneru a pak předá verzi do undeleteBlobContainer metody pro obnovení kontejneru.

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());
    }
}

Zdroje informací

Další informace o odstranění kontejneru pomocí klientské knihovny Azure Blob Storage pro Javu najdete v následujících zdrojích informací.

Operace rozhraní REST API

Sada Azure SDK pro Javu obsahuje knihovny, které jsou postavené na rozhraní Azure REST API a umožňují interakci s operacemi rozhraní REST API prostřednictvím známých paradigmat Javy. Metody klientské knihovny pro odstranění nebo obnovení kontejneru používají následující operace rozhraní REST API:

Ukázky kódu

Prostředky klientské knihovny

Viz také