このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
Azure Storage 内の BLOB はコンテナーにまとめられます。 BLOB をアップロードする前には、まずコンテナーを作成する必要があります。 この記事では、Java 用の Azure Storage クライアント ライブラリを使ってコンテナーを作成する方法について説明します。
既存のプロジェクトがない場合、Java 用 Azure Blob Storage クライアント ライブラリを操作するためにプロジェクトをセットアップする方法について、このセクションで説明します。 詳細については、「Azure Blob Storage と Java での作業開始」を参照してください。
この記事のコード例を使用するには、次の手順に従ってプロジェクトを設定します。
Note
この記事では Maven ビルド ツールを使用して、コード例をビルドして実行します。 Gradle などの他のビルド ツールも、Azure SDK for Java で動作します。
テキスト エディターでpom.xml
ファイルを開きます。BOM ファイルを含めるか、直接依存関係を含めることで、パッケージをインストールします。
次のimport
ステートメントを追加します。
import com.azure.storage.blob.*;
認可メカニズムには、コンテナーを作成するために必要なアクセス許可が必要です。 Microsoft Entra ID を使用した認可 (推奨) には、Azure RBAC 組み込みロールのストレージ BLOB データ共同作成者以上が必要です。 詳細については、「コンテナーの作成 (REST API)」に関する認可ガイダンスを参照してください。
アプリを Blob Storage に接続するには、BlobServiceClientのインスタンスを作成します。
次の例では、BlobServiceClientBuilder を使用し、DefaultAzureCredential
を使用してBlobServiceClient
オブジェクトをビルドし、必要な場合にコンテナーおよび BLOB クライアントを作成する方法を示します。
// Azure SDK client builders accept the credential as a parameter// TODO: Replace <storage-account-name> with your actual storage account nameBlobServiceClient blobServiceClient = new BlobServiceClientBuilder() .endpoint("https://<storage-account-name>.blob.core.windows.net/") .credential(new DefaultAzureCredentialBuilder().build()) .buildClient();// If needed, you can create a BlobContainerClient object from the BlobServiceClientBlobContainerClient containerClient = blobServiceClient .getBlobContainerClient("<container-name>");// If needed, you can create a BlobClient object from the BlobContainerClientBlobClient blobClient = containerClient .getBlobClient("<blob-name>");
クライアント オブジェクトの作成と管理の詳細については、「データ リソースを操作するクライアント オブジェクトを作成および管理する」を参照してください。
コンテナー名は、コンテナーまたはその BLOB をアドレス指定するために使用される一意の URI の一部になるため、有効な DNS 名である必要があります。 コンテナーに名前を付けるときは、次の規則に従います。
コンテナー リソースの URI は、次のように書式設定されます。
https://my-account-name.blob.core.windows.net/my-container-name
コンテナーを作成するには、BlobServiceClient
クラスから次のいずれかのメソッドを呼び出します。
また、以下に示すBlobContainerClient
クラスのメソッドのいずれかを使ってコンテナーを作成することもできます。
コンテナーは、ストレージ アカウントの直下に作成されます。 コンテナーを別のコンテナーの下に入れ子にすることはできません。create
およびcreateBlobContainer
メソッドでは、同じ名前のコンテナーが既に存在する場合、例外がスローされます。
次の例では、BlobServiceClient
オブジェクトからコンテナーを作成します。
public BlobContainerClient createContainer(BlobServiceClient blobServiceClient, String containerName) { // Create the container using the service client object BlobContainerClient blobContainerClient = blobServiceClient.createBlobContainer(containerName); return blobContainerClient;}
ルート コンテナーは、ストレージ アカウントの既定のコンテナーとして機能します。 各ストレージ アカウントには、$root. という名前のルート コンテナーを 1 つ含めることができます。 ルート コンテナーは明示的に作成または削除する必要があります。
ルート コンテナーに格納されている BLOB は、ルート コンテナー名を指定せずに参照できます。 ルート コンテナーを使用すると、ストレージ アカウント階層の最上位レベルにある BLOB を参照できます。 たとえば、ルート コンテナー内に存在する BLOB は、次の方法で参照できます。
https://accountname.blob.core.windows.net/default.html
次の例では、コンテナー名 $root を持つ新しいBlobContainerClient
オブジェクトを作成し、ストレージ アカウントにまだ存在しない場合はコンテナーを作成します。
public void createRootContainer(BlobServiceClient blobServiceClient) { // Creates a new BlobContainerClient object by appending the containerName to // the end of the URI BlobContainerClient blobContainerClient = blobServiceClient.getBlobContainerClient("$root"); // If the container does not already exist, create it using the container client blobContainerClient.createIfNotExists();}
Java 用のAzure Blob Storage クライアント ライブラリを使用したコンテナーの作成の詳細については、次のリソースを参照してください。
Azure SDK for Java には Azure REST API に基づき構築されたライブラリが含まれるため、使い慣れた Java パラダイムを通じて REST API 操作を実施できます。 コンテナーを作成するためのクライアント ライブラリ メソッドは、次の REST API 操作を使用します。
このページはお役に立ちましたか?
このページはお役に立ちましたか?