Tárolótulajdonságok és metaadatok kezelése Java használatával
A blobtárolók támogatják a rendszertulajdonságokat és a felhasználó által definiált metaadatokat az általuk tárolt adatok mellett. Ez a cikk bemutatja, hogyan kezelheti a rendszertulajdonságokat és a felhasználó által definiált metaadatokat a Java Azure Storage ügyfélkódtárával.
Előfeltételek
- Ez a cikk feltételezi, hogy már rendelkezik egy projekttel, amely a Java Azure Blob Storage ügyfélkódtárával működik együtt. A projekt beállításával, beleértve a csomagtelepítést, az irányelvek hozzáadását
import
és egy engedélyezett ügyfélobjektum létrehozását, olvassa el az Azure Storage és a Java használatának első lépéseit. - Az engedélyezési mechanizmusnak engedéllyel kell rendelkeznie a tároló tulajdonságainak vagy metaadatainak használatához. További információkért tekintse meg az alábbi REST API-műveletek engedélyezési útmutatóját:
Tudnivalók a tulajdonságokról és a metaadatokról
Rendszertulajdonságok: A rendszertulajdonságok minden Blob Storage-erőforráson léteznek. Ezek némelyike olvasható vagy beállítható, míg mások írásvédettek. A színfalak mögött egyes rendszertulajdonságok megfelelnek bizonyos szabványos HTTP-fejléceknek. A Java-hoz készült Azure Storage-ügyfélkódtár fenntartja ezeket a tulajdonságokat.
Felhasználó által definiált metaadatok: A felhasználó által definiált metaadatok egy vagy több, Blob Storage-erőforráshoz megadott név-érték párból állnak. Metaadatok használatával további értékeket tárolhat az erőforrással. A metaadat-értékek csak saját célra szolgálnak, és nem befolyásolják az erőforrás viselkedését.
A metaadat-név/érték párok érvényes HTTP-fejlécek, és be kell tartaniuk a HTTP-fejlécekre vonatkozó összes korlátozást. A metaadatok elnevezési követelményeiről további információt a Metaadatnevek című témakörben talál.
Tárolótulajdonságok lekérése
A tároló tulajdonságainak lekéréséhez használja a következő módszert:
Az alábbi példakód beolvassa egy tároló rendszertulajdonságait, és a tulajdonságértékeket egy konzolablakba írja:
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());
}
Metaadatok beállítása és lekérése
A metaadatokat egy vagy több név-érték párként is megadhatja egy blob- vagy tárolóerőforráson. A metaadatok beállításához használja a következő módszert:
A tároló metaadatainak beállítása felülírja a tárolóhoz társított összes meglévő metaadatot. Egyéni név-érték pár nem módosítható.
Az alábbi példakód egy tároló metaadatait állítja be:
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");
}
}
A metaadatok lekéréséhez hívja meg a következő metódust:
A következő példa metaadat-értékekben olvasható:
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());
});
}
Források
A tároló tulajdonságainak és metaadatainak a Java-hoz készült Azure Blob Storage-ügyfélkódtár használatával történő beállításával és lekérésével kapcsolatos további információkért tekintse meg az alábbi erőforrásokat.
REST API-műveletek
Az Azure SDK for Java olyan kódtárakat tartalmaz, amelyek az Azure REST API-ra épülnek, lehetővé téve a REST API-műveletek használatát ismert Java-paradigmákon keresztül. A tulajdonságok és metaadatok beállítására és lekérésére szolgáló ügyfélkódtár-metódusok a következő REST API-műveleteket használják:
- Tároló tulajdonságainak lekérése (REST API)
- Tároló metaadatainak beállítása (REST API)
- Tároló metaadatainak lekérése (REST API)
A getProperties
metódus a tároló tulajdonságait és metaadatait a Blob tulajdonságainak lekérése művelet és a Blob metaadatok lekérése művelet meghívásával kéri le.