Wyświetlanie listy kontenerów obiektów blob za pomocą języka Java
Po wyświetleniu listy kontenerów na koncie usługi Azure Storage z poziomu kodu można określić kilka opcji zarządzania sposobem zwracania wyników z usługi Azure Storage. W tym artykule pokazano, jak wyświetlić listę kontenerów przy użyciu biblioteki klienta usługi Azure Storage dla języka Java.
Wymagania wstępne
- W tym artykule założono, że masz już skonfigurowany projekt do pracy z biblioteką klienta usługi Azure Blob Storage dla języka Java. Aby dowiedzieć się więcej na temat konfigurowania projektu, w tym instalacji pakietu, dodawania
import
dyrektyw i tworzenia autoryzowanego obiektu klienta, zobacz Rozpoczynanie pracy z usługami Azure Storage i Java. - Mechanizm autoryzacji musi mieć uprawnienia do wyświetlania listy kontenerów obiektów blob. Aby dowiedzieć się więcej, zobacz wskazówki dotyczące autoryzacji dla następującej operacji interfejsu API REST:
Informacje o opcjach listy kontenerów
Podczas wyświetlania listy kontenerów z kodu można określić opcje zarządzania sposobem zwracania wyników z usługi Azure Storage. Możesz określić liczbę wyników, które mają być zwracane w każdym zestawie wyników, a następnie pobrać kolejne zestawy. Wyniki można również filtrować według prefiksu i zwracać metadane kontenera za pomocą wyników. Te opcje opisano w poniższych sekcjach.
Aby wyświetlić listę kontenerów na koncie magazynu, wywołaj następującą metodę:
Ta metoda zwraca iterowalny typ BlobContainerItem. Kontenery są uporządkowane leksykograficznie według nazwy.
Zarządzanie liczbą zwracanych wyników
Domyślnie operacja wyświetlania listy zwraca maksymalnie 5000 wyników jednocześnie. Aby zwrócić mniejszy zestaw wyników, podaj wartość niezerową dla rozmiaru strony wyników do zwrócenia. Tę wartość można ustawić przy użyciu następującej metody:
W przykładach przedstawionych w tym artykule pokazano, jak zwracać wyniki na stronach. Aby dowiedzieć się więcej na temat pojęć dotyczących stronicowania, zobacz Pagination with the Azure SDK for Java (Stronicowanie przy użyciu zestawu Azure SDK dla języka Java).
Filtrowanie wyników za pomocą prefiksu
Aby filtrować listę kontenerów, określ ciąg parametru prefix
. Ciąg prefiksu może zawierać co najmniej jeden znak. Usługa Azure Storage zwraca następnie tylko kontenery, których nazwy zaczynają się od tego prefiksu. Tę wartość można ustawić przy użyciu następującej metody:
Dołączanie metadanych kontenera
Aby uwzględnić metadane kontenera z wynikami, utwórz BlobContainerListDetails
wystąpienie i przekaż true
je do następującej metody:
Następnie przekaż BlobContainerListDetails
obiekt do następującej metody:
Dołączanie usuniętych kontenerów
Aby uwzględnić kontenery usunięte nietrwale z wynikami, utwórz BlobContainerListDetails
wystąpienie i przekaż true
je do następującej metody:
Następnie przekaż BlobContainerListDetails
obiekt do następującej metody:
Przykłady kodu
Poniższy przykład zawiera listę kontenerów i filtruje wyniki według określonego prefiksu:
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());
}
}
Możesz również zwrócić mniejszy zestaw wyników, określając rozmiar strony wyników do zwrócenia:
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());
});
}
}
Zasoby
Aby dowiedzieć się więcej na temat wyświetlania listy kontenerów przy użyciu biblioteki klienta usługi Azure Blob Storage dla języka Java, zobacz następujące zasoby.
Operacje interfejsu API REST
Zestaw Azure SDK dla języka Java zawiera biblioteki, które bazują na interfejsie API REST platformy Azure, co umożliwia interakcję z operacjami interfejsu API REST za pomocą znanych paradygmatów języka Java. Metody biblioteki klienta do wyświetlania listy kontenerów używają następującej operacji interfejsu API REST:
- Wyświetlanie listy kontenerów (interfejs API REST)
Przykłady kodu
Zasoby biblioteki klienta
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla