Správa vlastností kontejneru a metadat pomocí Javy

Kontejnery objektů blob podporují systémové vlastnosti a uživatelsky definovaná metadata kromě dat, která obsahují. Tento článek ukazuje, jak spravovat vlastnosti systému a uživatelsky definovaná metadata pomocí klientské knihovny azure Storage pro Javu.

Předpoklady

O vlastnostech a metadatech

  • Vlastnosti systému: Systémové vlastnosti existují pro každý prostředek blob Storage. Některé z nich můžou být přečtené nebo nastavené, zatímco jiné jsou jen pro čtení. Některé systémové vlastnosti na pozadí odpovídají určitým standardním hlavičkám HTTP. Klientská knihovna Azure Storage pro Javu tyto vlastnosti udržuje za vás.

  • Uživatelsky definovaná metadata: Uživatelsky definovaná metadata se skládají z jednoho nebo více párů název-hodnota, které zadáte pro prostředek úložiště objektů blob. Metadata můžete použít k uložení dalších hodnot s prostředkem. Hodnoty metadat jsou určené jenom pro vaše vlastní účely a nemají vliv na chování prostředku.

    Páry názvů a hodnot metadat jsou platné hlavičky HTTP a měly by dodržovat všechna omezení, která se řídí hlavičkami HTTP. Další informace opožadavch

Načtení vlastností kontejneru

K načtení vlastností kontejneru použijte následující metodu:

Následující příklad kódu načte systémové vlastnosti kontejneru a zapíše hodnoty vlastností do okna konzoly:

public void getContainerProperties(BlobContainerClient blobContainerClient) {
    BlobContainerProperties properties = blobContainerClient.getProperties();
    System.out.printf("Public Access Type: %s, Legal Hold? %b, Immutable? %b%n",
            properties.getBlobPublicAccess(),
            properties.hasLegalHold(),
            properties.hasImmutabilityPolicy());
}

Nastavení a načtení metadat

Metadata můžete zadat jako jeden nebo více párů název-hodnota v objektu blob nebo prostředku kontejneru. K nastavení metadat použijte následující metodu:

Nastavení metadat kontejneru přepíše všechna existující metadata přidružená ke kontejneru. Individuální dvojici název-hodnota není možné upravit.

Následující příklad kódu nastaví metadata v kontejneru:

public void addContainerMetadata(BlobContainerClient blobContainerClient) {
    Map<String, String> metadata = new HashMap<String, String>();
    metadata.put("docType", "text");
    metadata.put("category", "reference");

    try {
        blobContainerClient.setMetadata(metadata);
        System.out.printf("Set metadata completed %n");
    } catch (UnsupportedOperationException error) {
        System.out.printf("Failure while setting metadata %n");
    }
}

Pokud chcete načíst metadata, zavolejte následující metodu:

Následující příklad načte hodnoty metadat:

public void readContainerMetadata(BlobContainerClient blobContainerClient) {
    BlobContainerProperties properties = blobContainerClient.getProperties();

    System.out.printf("Container metadata: %n");
    properties.getMetadata().entrySet().forEach(metadataItem -> {
        System.out.printf(" %s = %s%n", metadataItem.getKey(), metadataItem.getValue());
    });
}

Zdroje informací

Další informace o nastavení a načítání vlastností kontejneru a metadat pomocí klientské knihovny služby 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 nastavení a načítání vlastností a metadat používají následující operace rozhraní REST API:

Metoda getProperties načte vlastnosti kontejneru a metadata voláním operace Get Blob Properties a Get Blob Metadata operace.

Ukázky kódu

Prostředky klientské knihovny