Hızlı Başlangıç: Java için Azure Blob Depolama istemci kitaplığı
Not
Sıfırdan oluştur seçeneği, yeni proje oluşturma, paketleri yükleme, kodu yazma ve temel bir konsol uygulamasını çalıştırma sürecinde adım adım size yol gösterir. Azure Blob Depolama bağlanan bir uygulama oluştururken yer alan tüm ayrıntıları anlamak istiyorsanız bu yaklaşım önerilir. Dağıtım görevlerini otomatikleştirmeyi ve tamamlanmış bir projeyle başlamayı tercih ediyorsanız Şablonla başla'yı seçin.
Not
Şablonla başla seçeneği, dağıtım görevlerini otomatikleştirmek için Azure Geliştirici CLI'sini kullanır ve tamamlanmış bir projeyle çalışmaya başlar. Bu yaklaşım, kurulum görevlerine geçmeden kodu mümkün olan en kısa sürede keşfetmek istiyorsanız önerilir. Uygulamayı derlemek için adım adım yönergeleri tercih ediyorsanız Sıfırdan oluştur'u seçin.
Blobları ve kapsayıcıları yönetmek için Java için Azure Blob Depolama istemci kitaplığını kullanmaya başlayın.
Bu makalede, paketi yüklemek için adımları izleyin ve temel görevler için örnek kodu deneyin.
Bu makalede, Azure kaynaklarını dağıtmak ve yalnızca birkaç komutla tamamlanmış bir konsol uygulaması çalıştırmak için Azure Geliştirici CLI'sini kullanacaksınız.
İpucu
Spring uygulamasında Azure Depolama kaynaklarıyla çalışıyorsanız Spring Cloud Azure'ı alternatif olarak değerlendirmenizi öneririz. Spring Cloud Azure, Azure hizmetleriyle sorunsuz Spring tümleştirmesi sağlayan açık kaynak bir projedir. Spring Cloud Azure hakkında daha fazla bilgi edinmek ve Blob Depolama'yı kullanan bir örneği görmek için bkz . Azure Depolama Blobu'na dosya yükleme.
API başvuru belgeleri | Kitaplık kaynak kodu | Paketi (Maven)Örnekler |
Önkoşullar
- Etkin aboneliği olan Azure hesabı - ücretsiz bir hesap oluşturun
- Azure Depolama hesabı - bir depolama hesabı oluşturun.
- Java Development Kit (JDK) sürüm 8 veya üzeri
- Apache Maven
- Azure aboneliği - ücretsiz bir abonelik oluşturun
- Java Development Kit (JDK) sürüm 8 veya üzeri
- Apache Maven
- Azure Geliştirici CLI'sı
Ayarlama
Bu bölümde, Java için Azure Blob Depolama istemci kitaplığıyla çalışmak üzere bir proje hazırlama işleminde size yol gösterilir.
Proje oluşturma
blob-quickstart adlı bir Java uygulaması oluşturun.
Bir konsol penceresinde (PowerShell veya Bash gibi), maven kullanarak blob-quickstart adlı yeni bir konsol uygulaması oluşturun. "Merhaba dünya!" oluşturmak için aşağıdaki mvn komutunu yazın Java projesi.
mvn archetype:generate ` --define interactiveMode=n ` --define groupId=com.blobs.quickstart ` --define artifactId=blob-quickstart ` --define archetypeArtifactId=maven-archetype-quickstart ` --define archetypeVersion=1.4
Projeyi oluşturma çıktısı aşağıdakine benzer olmalıdır:
[INFO] Scanning for projects... [INFO] [INFO] ------------------< org.apache.maven:standalone-pom >------------------- [INFO] Building Maven Stub Project (No POM) 1 [INFO] --------------------------------[ pom ]--------------------------------- [INFO] [INFO] >>> maven-archetype-plugin:3.1.2:generate (default-cli) > generate-sources @ standalone-pom >>> [INFO] [INFO] <<< maven-archetype-plugin:3.1.2:generate (default-cli) < generate-sources @ standalone-pom <<< [INFO] [INFO] [INFO] --- maven-archetype-plugin:3.1.2:generate (default-cli) @ standalone-pom --- [INFO] Generating project in Batch mode [INFO] ---------------------------------------------------------------------------- [INFO] Using following parameters for creating project from Archetype: maven-archetype-quickstart:1.4 [INFO] ---------------------------------------------------------------------------- [INFO] Parameter: groupId, Value: com.blobs.quickstart [INFO] Parameter: artifactId, Value: blob-quickstart [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: package, Value: com.blobs.quickstart [INFO] Parameter: packageInPathFormat, Value: com/blobs/quickstart [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: package, Value: com.blobs.quickstart [INFO] Parameter: groupId, Value: com.blobs.quickstart [INFO] Parameter: artifactId, Value: blob-quickstart [INFO] Project created from Archetype in dir: C:\QuickStarts\blob-quickstart [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 7.056 s [INFO] Finished at: 2019-10-23T11:09:21-07:00 [INFO] ------------------------------------------------------------------------ ```
Yeni oluşturulan blob-quickstart klasörüne geçin.
cd blob-quickstart
Blob-quickstart dizininde data adlı başka bir dizin oluşturun. Bu klasör, blob veri dosyalarının oluşturulacağı ve depolanacağı klasördür.
mkdir data
Paketleri yükleme
pom.xml
Dosyayı metin düzenleyicinizde açın.
Kitaplığın en son sürümüne bağımlılığı almak için azure-sdk-bom ekleyin. Aşağıdaki kod parçacığında yer tutucuyu {bom_version_to_target}
sürüm numarasıyla değiştirin. azure-sdk-bom kullanmak, her bir bağımlılığın sürümünü belirtmenize gerek kalmamanızı sağlar. Ürün reçetesi hakkında daha fazla bilgi edinmek için bkz . Azure SDK ÜRÜN REÇETESI BENİOKU.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-sdk-bom</artifactId>
<version>{bom_version_to_target}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Ardından aşağıdaki bağımlılık öğelerini bağımlılık grubuna ekleyin. Azure hizmetlerine parolasız bağlantılar için azure-identity bağımlılığı gereklidir.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-storage-blob</artifactId>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
</dependency>
Uygulama çerçevesini ayarlama
Proje dizininden uygulamanın temel yapısını oluşturmak için aşağıdaki adımları izleyin:
- /src/main/java/com/blobs/quickstart dizinine gidin
App.java
Dosyayı düzenleyicinizde açma- Satırı silme
System.out.println("Hello world!");
- Gerekli
import
yönergeleri ekleme
Kod şu çerçeveye benzemelidir:
package com.blobs.quickstart;
/**
* Azure Blob Storage quickstart
*/
import com.azure.identity.*;
import com.azure.storage.blob.*;
import com.azure.storage.blob.models.*;
import java.io.*;
public class App
{
public static void main(String[] args) throws IOException
{
// Quickstart code goes here
}
}
Azure Geliştirici CLI'sı yüklendikten sonra bir depolama hesabı oluşturabilir ve örnek kodu yalnızca birkaç komutla çalıştırabilirsiniz. Projeyi yerel geliştirme ortamınızda veya DevContainer'da çalıştırabilirsiniz.
Azure Geliştirici CLI şablonunu başlatma ve kaynakları dağıtma
Boş bir dizinden şablonu başlatmak azd
, Azure kaynaklarını sağlamak ve kodu kullanmaya başlamak için şu adımları izleyin:
GitHub'dan hızlı başlangıç deposu varlıklarını kopyalayın ve şablonu yerel olarak başlatın:
azd init --template blob-storage-quickstart-java
Aşağıdaki bilgiler istenir:
- Ortam adı: Bu değer, Azure Geliştirici CLI tarafından oluşturulan tüm Azure kaynakları için ön ek olarak kullanılır. Adın tüm Azure aboneliklerinde benzersiz olması ve 3 ile 24 karakter uzunluğunda olması gerekir. Ad yalnızca sayılar ve küçük harfler içerebilir.
Azure'da oturum açın:
azd auth login
Kaynakları sağlayın ve Azure'a dağıtın:
azd up
Aşağıdaki bilgiler istenir:
- Abonelik: Kaynaklarınızın dağıtılacağı Azure aboneliği.
- Konum: Kaynaklarınızın dağıtıldığı Azure bölgesi.
Dağıtımın tamamlanması birkaç dakika sürebilir. Komutun çıktısı
azd up
, yeni oluşturulan depolama hesabının adını içerir ve bu adı daha sonra kodu çalıştırmak için kullanmanız gerekir.
Örnek kodu çalıştırma
Bu noktada kaynaklar Azure'a dağıtılır ve kod neredeyse çalışmaya hazırdır. Koddaki depolama hesabının adını güncelleştirmek ve örnek konsol uygulamasını çalıştırmak için şu adımları izleyin:
- Depolama hesabı adını güncelleştirin:
- Yerel dizinde blob-quickstart/src/main/java/com/blobs/quickstart dizinine gidin.
- düzenleyicinizde App.java adlı dosyayı açın. Yer tutucuyu
<storage-account-name>
bulun ve komutu tarafındanazd up
oluşturulan depolama hesabının gerçek adıyla değiştirin. - Değişiklikleri kaydedin.
- Projeyi çalıştırın:
- Dosyayı içeren blob-quickstart dizinine
pom.xml
gidin. Aşağıdakimvn
komutu kullanarak projeyi derleyin:mvn compile
- Derlenen kodu dağıtılabilir biçiminde paketleyin:
mvn package
- Uygulamayı yürütmek için aşağıdaki
mvn
komutu çalıştırın:mvn exec:java
- Dosyayı içeren blob-quickstart dizinine
- Çıkışı gözlemleyin: Bu uygulama yerel veri klasörünüzde bir test dosyası oluşturur ve depolama hesabındaki bir kapsayıcıya yükler. Örnek daha sonra kapsayıcıdaki blobları listeler ve eski ve yeni dosyaları karşılaştırabilmeniz için dosyayı yeni bir adla indirir.
Örnek kodun nasıl çalıştığı hakkında daha fazla bilgi edinmek için bkz . Kod örnekleri.
Kodu test etme işlemini tamamladığınızda, komutu tarafından azd up
oluşturulan kaynakları silmek için Kaynakları temizleme bölümüne bakın.
Nesne modeli
Azure Blob Depolama, çok büyük miktarlarda yapılandırılmamış verileri depolamak için iyileştirilmiştir. Yapılandırılmamış veriler, metin veya ikili veri gibi belirli bir veri modeline veya tanımına uymaz. Blob depolama üç tür kaynak sunar:
- Depolama hesabı
- Depolama hesabındaki bir kapsayıcı
- Kapsayıcıdaki bir blob
Aşağıdaki diyagramda bu kaynaklar arasındaki ilişki gösterilmektedir.
Bu kaynaklarla etkileşime geçmek için aşağıdaki Java sınıflarını kullanın:
- BlobServiceClient: sınıfı,
BlobServiceClient
Azure Depolama kaynaklarını ve blob kapsayıcılarını işlemenize olanak tanır. Depolama hesabı, Blob hizmeti için en üst düzey ad alanını sağlar. - BlobServiceClientBuilder:
BlobServiceClientBuilder
sınıfı, nesnelerin yapılandırmasına ve örneğine yardımcı olmak için akıcı bir oluşturucu API'siniBlobServiceClient
sağlar. - BlobContainerClient: sınıfı,
BlobContainerClient
Azure Depolama kapsayıcılarını ve bloblarını işlemenize olanak tanır. - BlobClient: sınıfı,
BlobClient
Azure Depolama bloblarını işlemenize olanak tanır. - BlobItem: sınıfı listBlobs
BlobItem
çağrısından döndürülen tek tek blobları temsil eder.
Kod örnekleri
Bu örnek kod parçacıkları, Java için Azure Blob Depolama istemci kitaplığıyla aşağıdaki eylemlerin nasıl gerçekleştirileceğini gösterir:
- Azure'da kimlik doğrulaması ve blob verilerine erişim yetkisi verme
- Kapsayıcı oluşturma
- Blobları kapsayıcıya yükleme
- Kapsayıcıdaki blobları listeleme
- Blobları indirme
- Kapsayıcı silme
Not
Azure Geliştirici CLI şablonu, örnek kodun zaten bulunduğu bir dosya içerir. Aşağıdaki örneklerde, örnek kodun her bölümü için ayrıntılı bilgi sağlanır. Şablon, Azure'da kimlik doğrulaması bölümünde açıklandığı gibi önerilen parolasız kimlik doğrulama yöntemini uygular. bağlantı dizesi yöntemi alternatif olarak gösterilir, ancak şablonda kullanılmaz ve üretim kodu için önerilmez.
Azure'da kimlik doğrulaması ve blob verilerine erişim yetkisi verme
Azure Blob Depolama uygulama istekleri yetkilendirilmelidir. DefaultAzureCredential
Azure Identity istemci kitaplığı tarafından sağlanan sınıfı kullanmak, Blob Depolama da dahil olmak üzere kodunuzdaki Azure hizmetlerine parolasız bağlantılar uygulamak için önerilen yaklaşımdır.
Ayrıca, hesap erişim anahtarını kullanarak istekleri Azure Blob Depolama yetkilendirmeniz de gerekir. Ancak bu yaklaşım dikkatli kullanılmalıdır. Geliştiriciler, erişim anahtarını güvenli olmayan bir konumda asla kullanıma sunmamak için dikkatli olmalıdır. Erişim anahtarına sahip olan herkes, depolama hesabına yönelik istekleri yetkilendirebiliyor ve tüm verilere etkin bir şekilde erişim sahibi oluyor. DefaultAzureCredential
parolasız kimlik doğrulamasına izin vermek için hesap anahtarı üzerinde gelişmiş yönetim ve güvenlik avantajları sunar. Her iki seçenek de aşağıdaki örnekte gösterilmiştir.
DefaultAzureCredential
Java için Azure Identity istemci kitaplığı tarafından sağlanan bir sınıftır. DefaultAzureCredential
birden çok kimlik doğrulama yöntemini destekler ve çalışma zamanında hangi yöntemin kullanılacağını belirler. Bu yaklaşım, uygulamanızın ortama özgü kod uygulamadan farklı ortamlarda (yerel ve üretim) farklı kimlik doğrulama yöntemleri kullanmasını sağlar.
Kimlik bilgilerinin arandığı DefaultAzureCredential
sıra ve konumlar Azure Kimlik kitaplığına genel bakış sayfasında bulunabilir.
Örneğin, uygulamanız yerel olarak geliştirme yaparken Visual Studio Code oturum açma kimlik bilgilerinizi kullanarak kimlik doğrulaması yapabilir. Ardından uygulamanız Azure'a dağıtıldıktan sonra yönetilen kimliği kullanabilir. Bu geçiş için kod değişikliği gerekmez.
Microsoft Entra kullanıcı hesabınıza rol atama
Yerel olarak geliştirme yaparken blob verilerine erişen kullanıcı hesabının doğru izinlere sahip olduğundan emin olun. Blob verilerini okumak ve yazmak için Depolama Blob Verileri Katkıda Bulunanı gerekir. Kendinize bu rolü atamak için Kullanıcı Erişimi Yöneticisi rolüne veya Microsoft.Authorization/roleAssignments/write eylemini içeren başka bir role atanmalısınız. Azure portalı, Azure CLI veya Azure PowerShell'i kullanarak kullanıcıya Azure RBAC rolleri atayabilirsiniz. Rol atamaları için kullanılabilir kapsamlar hakkında daha fazla bilgiyi kapsam genel bakış sayfasından öğrenebilirsiniz.
Bu senaryoda, En Az Ayrıcalık İlkesi'ni izlemek için depolama hesabı kapsamındaki kullanıcı hesabınıza izinler atayacaksınız. Bu uygulama kullanıcılara yalnızca gereken minimum izinleri verir ve daha güvenli üretim ortamları oluşturur.
Aşağıdaki örnek, depolama hesabınızdaki blob verilerine hem okuma hem de yazma erişimi sağlayan Depolama Blob Verileri Katkıda Bulunanı rolünü kullanıcı hesabınıza atar.
Önemli
Çoğu durumda rol atamasının Azure'a yayılması bir veya iki dakika sürer, ancak nadir durumlarda sekiz dakikaya kadar sürebilir. Kodunuzu ilk kez çalıştırdığınızda kimlik doğrulama hataları alıyorsanız, birkaç dakika bekleyin ve yeniden deneyin.
Azure portalında ana arama çubuğunu veya sol gezintiyi kullanarak depolama hesabınızı bulun.
Depolama hesabına genel bakış sayfasında sol taraftaki menüden Erişim denetimi (IAM) öğesini seçin.
Erişim denetimi (IAM) sayfasında Rol atamaları sekmesini seçin.
Üst menüden + Ekle'yi seçin ve ardından açılan menüden Rol ataması ekle'yi seçin.
Sonuçları istenen role göre filtrelemek için arama kutusunu kullanın. Bu örnek için Depolama Blobu Veri Katkıda Bulunanı'nı arayın ve eşleşen sonucu seçin ve ardından İleri'yi seçin.
Erişim ata'nın altında Kullanıcı, grup veya hizmet sorumlusu'na tıklayın ve ardından + Üye seç'e tıklayın.
İletişim kutusunda Microsoft Entra kullanıcı adınızı (genellikle user@domain e-posta adresiniz) arayın ve iletişim kutusunun alt kısmındaki Seç'i seçin.
Son sayfaya gitmek için Gözden geçir + ata'yı seçin ve ardından işlemi tamamlamak için Gözden geçir + yeniden ata'yı seçin.
DefaultAzureCredential kullanarak oturum açın ve uygulama kodunuzu Azure'a bağlayın
Aşağıdaki adımları kullanarak depolama hesabınızdaki verilere erişimi yetkileyebilirsiniz:
Depolama hesabınızda rolü atadığınız Microsoft Entra hesabıyla kimliğinizin doğrulanmış olduğundan emin olun. Azure CLI, Visual Studio Code veya Azure PowerShell aracılığıyla kimlik doğrulaması yapabilirsiniz.
Aşağıdaki komutu kullanarak Azure CLI aracılığıyla Azure'da oturum açın:
az login
kullanmak
DefaultAzureCredential
için azure-identity bağımlılığının içindepom.xml
eklendiğinden emin olun:<dependency> <groupId>com.azure</groupId> <artifactId>azure-identity</artifactId> </dependency>
Bu kodu yöntemine
Main
ekleyin. Kod yerel iş istasyonunuzda çalıştığında, Azure CLI veya Visual Studio Code gibi Azure'da kimlik doğrulaması yapmak için oturum açtığınız öncelikli aracın geliştirici kimlik bilgilerini kullanır./* * The default credential first checks environment variables for configuration * If environment configuration is incomplete, it will try managed identity */ DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder().build(); // Azure SDK client builders accept the credential as a parameter // TODO: Replace <storage-account-name> with your actual storage account name BlobServiceClient blobServiceClient = new BlobServiceClientBuilder() .endpoint("https://<storage-account-name>.blob.core.windows.net/") .credential(defaultCredential) .buildClient();
URI'nizdeki depolama hesabı adını güncelleştirdiğinden
BlobServiceClient
emin olun. Depolama hesabı adı, Azure portalının genel bakış sayfasında bulunabilir.Not
Azure'a dağıtıldığında, Azure'da çalışan bir uygulamadan Azure Depolama'ya yönelik istekleri yetkilendirmek için aynı kod kullanılabilir. Ancak Azure'daki uygulamanızda yönetilen kimliği etkinleştirmeniz gerekir. Ardından depolama hesabınızı bu yönetilen kimliğin bağlanmasına izin verecek şekilde yapılandırın. Azure hizmetleri arasında bu bağlantıyı yapılandırma hakkında ayrıntılı yönergeler için Bkz. Azure tarafından barındırılan uygulamalardan kimlik doğrulama öğreticisi.
Kapsayıcı oluşturma
nesnesinde createBlobContainer yöntemini blobServiceClient
çağırarak depolama hesabınızda yeni bir kapsayıcı oluşturun. Bu örnekte kod, benzersiz olduğundan emin olmak için kapsayıcı adına bir GUID değeri ekler.
Bu kodu yönteminin Main
sonuna ekleyin:
// Create a unique name for the container
String containerName = "quickstartblobs" + java.util.UUID.randomUUID();
// Create the container and return a container client object
BlobContainerClient blobContainerClient = blobServiceClient.createBlobContainer(containerName);
Kapsayıcı oluşturma hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz . Java ile blob kapsayıcısı oluşturma.
Önemli
Kapsayıcı adlarının küçük harfle yazılması gerekir. Kapsayıcıları ve blobları adlandırma hakkında daha fazla bilgi için bkz. Kapsayıcıları, Blobları ve Meta Verileri Adlandırma ve Bunlara Başvurma.
Blobları kapsayıcıya yükleme
uploadFromFile yöntemini çağırarak bir blobu kapsayıcıya yükleyin. Örnek kod, kapsayıcıya yüklemek için yerel veri dizininde bir metin dosyası oluşturur.
Bu kodu yönteminin Main
sonuna ekleyin:
// Create the ./data/ directory and a file for uploading and downloading
String localPath = "./data/";
new File(localPath).mkdirs();
String fileName = "quickstart" + java.util.UUID.randomUUID() + ".txt";
// Get a reference to a blob
BlobClient blobClient = blobContainerClient.getBlobClient(fileName);
// Write text to the file
FileWriter writer = null;
try
{
writer = new FileWriter(localPath + fileName, true);
writer.write("Hello, World!");
writer.close();
}
catch (IOException ex)
{
System.out.println(ex.getMessage());
}
System.out.println("\nUploading to Blob storage as blob:\n\t" + blobClient.getBlobUrl());
// Upload the blob
blobClient.uploadFromFile(localPath + fileName);
Blobları karşıya yükleme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz . Java ile blob yükleme.
Kapsayıcıdaki blobları listeleme
listBlobs yöntemini çağırarak kapsayıcıdaki blobları listeleyin. Bu durumda kapsayıcıya yalnızca bir blob eklendiğinden listeleme işlemi yalnızca bu blobu döndürür.
Bu kodu yönteminin Main
sonuna ekleyin:
System.out.println("\nListing blobs...");
// List the blob(s) in the container.
for (BlobItem blobItem : blobContainerClient.listBlobs()) {
System.out.println("\t" + blobItem.getName());
}
Blobları listeleme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz . Java ile blobları listeleme.
Blob’ları indirme
downloadToFile yöntemini çağırarak daha önce oluşturulmuş blobu indirin. Örnek kod, her iki dosyayı da yerel dosya sisteminde görebilmeniz için dosya adına "İnDİr" son ekini ekler.
Bu kodu yönteminin Main
sonuna ekleyin:
// Download the blob to a local file
// Append the string "DOWNLOAD" before the .txt extension for comparison purposes
String downloadFileName = fileName.replace(".txt", "DOWNLOAD.txt");
System.out.println("\nDownloading blob to\n\t " + localPath + downloadFileName);
blobClient.downloadToFile(localPath + downloadFileName);
Blobları indirme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz . Java ile blob indirme.
Kapsayıcı silme
Aşağıdaki kod, delete yöntemini kullanarak kapsayıcının tamamını kaldırarak uygulamanın oluşturduğu kaynakları temizler. Ayrıca uygulama tarafından oluşturulan yerel dosyaları da siler.
Uygulama blob, kapsayıcı ve yerel dosyaları silmeden önce çağırarak System.console().readLine()
kullanıcı girişi için duraklatılır. Bu, kaynakların silinmeden önce doğru oluşturulduğunu doğrulamak için iyi bir fırsattır.
Bu kodu yönteminin Main
sonuna ekleyin:
File downloadedFile = new File(localPath + downloadFileName);
File localFile = new File(localPath + fileName);
// Clean up resources
System.out.println("\nPress the Enter key to begin clean up");
System.console().readLine();
System.out.println("Deleting blob container...");
blobContainerClient.delete();
System.out.println("Deleting the local source and downloaded files...");
localFile.delete();
downloadedFile.delete();
System.out.println("Done");
Kapsayıcı silme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz . Java ile blob kapsayıcısını silme ve geri yükleme.
Kodu çalıştırma
Bu uygulama yerel klasörünüzde bir test dosyası oluşturur ve blob depolamaya yükler. Örnek daha sonra kapsayıcıdaki blobları listeler ve eski ve yeni dosyaları karşılaştırabilmeniz için dosyayı yeni bir adla indirir.
Kodu derlemek, paketlemek ve çalıştırmak için adımları izleyin
- Dosyasını içeren
pom.xml
dizine gidin ve aşağıdakimvn
komutu kullanarak projeyi derleyin:mvn compile
- Derlenen kodu dağıtılabilir biçiminde paketleyin:
mvn package
- Uygulamayı yürütmek için aşağıdaki
mvn
komutu çalıştırın:
Çalıştırma adımını basitleştirmek için, aşağıda gösterildiği gibi öğesinemvn exec:java -D exec.mainClass=com.blobs.quickstart.App -D exec.cleanupDaemonThreads=false
pom.xml
ekleyebilirexec-maven-plugin
ve yapılandırabilirsiniz:
Bu yapılandırmayla, uygulamayı aşağıdaki komutla yürütebilirsiniz:<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.4.0</version> <configuration> <mainClass>com.blobs.quickstart.App</mainClass> <cleanupDaemonThreads>false</cleanupDaemonThreads> </configuration> </plugin>
mvn exec:java
Uygulamanın çıkışı aşağıdaki örneğe benzer (okunabilirlik için atlanmış UUID değerleri):
Azure Blob Storage - Java quickstart sample
Uploading to Blob storage as blob:
https://mystorageacct.blob.core.windows.net/quickstartblobsUUID/quickstartUUID.txt
Listing blobs...
quickstartUUID.txt
Downloading blob to
./data/quickstartUUIDDOWNLOAD.txt
Press the Enter key to begin clean up
Deleting blob container...
Deleting the local source and downloaded files...
Done
Temizleme işlemine başlamadan önce iki dosya için veri klasörünüzü denetleyin. Bunları karşılaştırabilir ve aynı olduklarını gözlemleyebilirsiniz.
Kaynakları temizleme
Dosyaları doğruladıktan ve testi tamamladıktan sonra, depolama hesabında oluşturduğunuz kapsayıcıyla birlikte test dosyalarını silmek için Enter tuşuna basın. Kaynakları silmek için Azure CLI'yi de kullanabilirsiniz.
Hızlı başlangıcı tamamladığınızda, aşağıdaki komutu çalıştırarak oluşturduğunuz kaynakları temizleyebilirsiniz:
azd down
Kaynakların silinmesini onaylamanız istenir. Onaylamak için girin y
.