Delen via


Blobcontainers weergeven met Java

Wanneer u de containers in een Azure Storage-account uit uw code weergeeft, kunt u verschillende opties opgeven om te beheren hoe resultaten worden geretourneerd vanuit Azure Storage. In dit artikel wordt beschreven hoe u containers weergeeft met behulp van de Azure Storage-clientbibliotheek voor Java.

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 blobcontainers weer te geven. Zie de autorisatierichtlijnen voor de volgende REST API-bewerking voor meer informatie:

Over opties voor containervermelding

Wanneer u containers uit uw code opgeeft, kunt u opties opgeven om te beheren hoe resultaten worden geretourneerd vanuit Azure Storage. U kunt het aantal resultaten opgeven dat moet worden geretourneerd in elke set resultaten en vervolgens de volgende sets ophalen. U kunt de resultaten ook filteren op een voorvoegsel en containermetagegevens retourneren met de resultaten. Deze opties worden beschreven in de volgende secties.

Als u containers in een opslagaccount wilt weergeven, roept u de volgende methode aan:

Met deze methode wordt een itereerbaar type BlobContainerItem geretourneerd. Containers worden lexicografisch gesorteerd op naam.

Beheren hoeveel resultaten worden geretourneerd

Standaard retourneert een vermeldingsbewerking maximaal 5000 resultaten tegelijk. Als u een kleinere set resultaten wilt retourneren, geeft u een niet-nulwaarde op voor de grootte van de pagina met resultaten die u wilt retourneren. U kunt deze waarde instellen met behulp van de volgende methode:

De voorbeelden in dit artikel laten zien hoe u resultaten op pagina's kunt retourneren. Zie Paginering met de Azure SDK voor Java voor meer informatie over pagineringsconcepten.

Resultaten filteren met een voorvoegsel

Als u de lijst met containers wilt filteren, geeft u een tekenreeks op voor de prefix parameter. De tekenreeks voor het voorvoegsel kan een of meer tekens bevatten. Azure Storage retourneert vervolgens alleen de containers waarvan de namen beginnen met dat voorvoegsel. U kunt deze waarde instellen met behulp van de volgende methode:

Containermetagegevens opnemen

Als u containermetagegevens wilt opnemen met de resultaten, maakt u een BlobContainerListDetails exemplaar en geeft u deze door true aan de volgende methode:

Geef het BlobContainerListDetails object vervolgens door aan de volgende methode:

Verwijderde containers opnemen

Als u voorlopig verwijderde containers wilt opnemen met de resultaten, maakt u een BlobContainerListDetails exemplaar en geeft true u deze door aan de volgende methode:

Geef het BlobContainerListDetails object vervolgens door aan de volgende methode:

Codevoorbeelden

In het volgende voorbeeld worden containers weergegeven en worden de resultaten gefilterd op basis van een opgegeven voorvoegsel:

public void listContainers(BlobServiceClient blobServiceClient) {
    // Set a prefix to filter results based on a specified character or string
    ListBlobContainersOptions options = new ListBlobContainersOptions()
            .setPrefix("container-");

    System.out.println("List containers:");
    for (BlobContainerItem blobContainerItem : blobServiceClient.listBlobContainers(options, null)) {
        System.out.printf("Container name: %s%n", blobContainerItem.getName());
    }
}

U kunt ook een kleinere set resultaten retourneren door de grootte van de pagina met resultaten op te geven die u wilt retourneren:

public void listContainersWithPaging(BlobServiceClient blobServiceClient) {
    // Set a prefix to filter results and specify a page limit
    ListBlobContainersOptions options = new ListBlobContainersOptions()
            .setMaxResultsPerPage(2)  // Low number for demonstration purposes
            .setPrefix("container-");

    int i = 0;
    Iterable<PagedResponse<BlobContainerItem>> blobContainerPages = blobServiceClient
            .listBlobContainers(options, null).iterableByPage();
    for (PagedResponse<BlobContainerItem> page : blobContainerPages) {
        System.out.printf("Page %d%n", ++i);
        page.getElements().forEach(container -> {
            System.out.printf("Name: %s%n", container.getName());
        });
    }
}

Resources

Zie de volgende resources voor meer informatie over het weergeven van containers 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 weergeven van containers gebruiken de volgende REST API-bewerking:

Codevoorbeelden

Clientbibliotheekbronnen

Zie ook