クイック スタート:Azure App Configuration を使用して Java Spring アプリを作成するQuickstart: Create a Java Spring app with Azure App Configuration

このクイック スタートでは、コードとは別にアプリケーション設定のストレージと管理を一元化するために、Azure App Configuration を Java Spring アプリに組み込みます。In this quickstart, you incorporate Azure App Configuration into a Java Spring app to centralize storage and management of application settings separate from your code.

前提条件Prerequisites

App Configuration ストアを作成するCreate an App Configuration store

  1. 新しい App Configuration ストアを作成するには、Azure portal にサインインします。To create a new App Configuration store, sign in to the Azure portal. ホーム ページの左上にある [+ リソースの作成] を選択します。In the upper-left corner of the home page, select Create a resource. [Marketplace を検索] ボックスに「App Configuration」と入力し、Enter キーを押します。In the Search the Marketplace box, enter App Configuration and select Enter.

    App Configuration を検索する

  2. 検索結果の [アプリ構成] を選択し、 [作成] を選択します。Select App Configuration from the search results, and then select Create.

    [作成] を選択します

  3. [アプリ構成] > [作成] ウィンドウで、次の設定を入力します。On the App Configuration > Create pane, enter the following settings:

    設定Setting 推奨値Suggested value 説明Description
    リソース名Resource name グローバルに一意の名前Globally unique name App Configuration ストア リソースに使用する一意のリソース名を入力します。Enter a unique resource name to use for the App Configuration store resource. 名前は 5 から 50 文字の文字列で、数字、英字、- 文字のみを使用する必要があります。The name must be a string between 5 and 50 characters and contain only numbers, letters, and the - character. 名前の先頭または末尾を - 文字にすることはできません。The name can't start or end with the - character.
    サブスクリプションSubscription 該当するサブスクリプションYour subscription App Configuration のテストに使用する Azure サブスクリプションを選択します。Select the Azure subscription that you want to use to test App Configuration. アカウントにサブスクリプションが 1 つしかない場合は自動的に選択されるため、 [サブスクリプション] の一覧は表示されません。If your account has only one subscription, it's automatically selected and the Subscription list isn't displayed.
    リソース グループResource group AppConfigTestResourcesAppConfigTestResources App Configuration ストア リソースのリソース グループを選択または作成します。Select or create a resource group for your App Configuration store resource. このグループで複数のリソースをまとめておくと、そのリソース グループを削除することで複数のリソースを同時に削除できるため、便利です。This group is useful for organizing multiple resources that you might want to delete at the same time by deleting the resource group. 詳細については、リソース グループを使用した Azure リソースの管理に関するページを参照してください。For more information, see Use resource groups to manage your Azure resources.
    地域Location 米国中部Central US [場所] を使用して、アプリ構成ストアがホストされている地理的位置を指定します。Use Location to specify the geographic location in which your app configuration store is hosted. 最高のパフォーマンスを得るには、アプリケーションの他のコンポーネントと同じリージョンにリソースを作成します。For the best performance, create the resource in the same region as other components of your application.

    App Configuration ストア リソースを作成する

  4. 作成 を選択します。Select Create. デプロイには数分かかることがあります。The deployment might take a few minutes.

  5. デプロイが完了したら、 [設定] > [アクセス キー] を選択します。After the deployment finishes, select Settings > Access Keys. 接続文字列の読み取り専用の主キーをメモします。Make a note of the primary read-only key connection string. この接続文字列は、後で、作成した App Configuration ストアと通信するようにアプリケーションを構成する際に使用します。You'll use this connection string later to configure your application to communicate with the App Configuration store that you created.

  1. [Configuration Explorer](構成エクスプローラー) > [+ 作成] の順に選択して、次のキーと値のペアを追加します。Select Configuration Explorer > + Create to add the following key-value pairs:

    KeyKey Value
    /application/config.message/application/config.message こんにちはHello

    [ラベル][コンテンツの種類] は、現時点では空にしておきます。Leave Label and Content Type empty for now.

Spring Boot アプリを作成するCreate a Spring Boot app

Spring Initializr を使用して、新しい Spring Boot プロジェクトを作成します。Use the Spring Initializr to create a new Spring Boot project.

  1. [https://www.microsoft.com](https://start.spring.io/) を参照します。Browse to https://start.spring.io/.

  2. 次のオプションを指定します。Specify the following options:

    • JavaMaven プロジェクトを生成します。Generate a Maven project with Java.
    • Spring Boot のバージョンとして、2.0 以降を指定します。Specify a Spring Boot version that's equal to or greater than 2.0.
    • アプリケーションのグループ (Group)成果物 (Artifact) の名前を指定します。Specify the Group and Artifact names for your application.
    • Spring Web の依存関係を追加します。Add the Spring Web dependency.
  3. 前の各オプションを指定してから、 [プロジェクトの生成] を選択します。After you specify the previous options, select Generate Project. メッセージが表示されたら、ローカル コンピューター上のパスにプロジェクトをダウンロードします。When prompted, download the project to a path on your local computer.

App Configuration ストアに接続するConnect to an App Configuration store

  1. ファイルをローカル システム上に展開したら、シンプルな Spring Boot アプリケーションの編集を開始できます。After you extract the files on your local system, your simple Spring Boot application is ready for editing. アプリのルート ディレクトリで pom.xml ファイルを探します。Locate the pom.xml file in the root directory of your app.

  2. テキスト エディターで pom.xml ファイルを開き、Spring Cloud Azure Config スターターを <dependencies> のリストに追加します。Open the pom.xml file in a text editor, and add the Spring Cloud Azure Config starter to the list of <dependencies>:

    <dependency>
        <groupId>com.microsoft.azure</groupId>
        <artifactId>spring-cloud-starter-azure-appconfiguration-config</artifactId>
        <version>1.1.0</version>
    </dependency>
    
  3. アプリのパッケージ ディレクトリに、MessageProperties.java という名前の新しい Java ファイルを作成します。Create a new Java file named MessageProperties.java in the package directory of your app. 次の行を追加します。Add the following lines:

    package com.example.demo;
    
    import org.springframework.boot.context.properties.ConfigurationProperties;
    
    @ConfigurationProperties(prefix = "config")
    public class MessageProperties {
        private String message;
    
        public String getMessage() {
            return message;
        }
    
        public void setMessage(String message) {
            this.message = message;
        }
    }
    
  4. アプリのパッケージ ディレクトリに、HelloController.java という名前の新しい Java ファイルを作成します。Create a new Java file named HelloController.java in the package directory of your app. 次の行を追加します。Add the following lines:

    package com.example.demo;
    
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class HelloController {
        private final MessageProperties properties;
    
        public HelloController(MessageProperties properties) {
            this.properties = properties;
        }
    
        @GetMapping
        public String getMessage() {
            return "Message: " + properties.getMessage();
        }
    }
    
  5. メイン アプリケーションの Java ファイルを開き、@EnableConfigurationProperties を追加してこの機能を有効にします。Open the main application Java file, and add @EnableConfigurationProperties to enable this feature.

    import org.springframework.boot.context.properties.EnableConfigurationProperties;
    
    @SpringBootApplication
    @EnableConfigurationProperties(MessageProperties.class)
    public class DemoApplication {
        public static void main(String[] args) {
            SpringApplication.run(DemoApplication.class, args);
        }
    }
    
  6. アプリの resources ディレクトリに、bootstrap.properties という名前の新しいファイルを作成し、そのファイルに以下の行を追加します。Create a new file named bootstrap.properties under the resources directory of your app, and add the following lines to the file. サンプルの値を、App Configuration ストアの適切なプロパティに置き換えます。Replace the sample values with the appropriate properties for your App Configuration store.

    spring.cloud.azure.appconfiguration.stores[0].connection-string=[your-connection-string]
    

アプリをビルドしてローカルで実行するBuild and run the app locally

  1. Spring Boot アプリケーションを Maven でビルドし、実行します。次に例を示します。Build your Spring Boot application with Maven and run it, for example:

    mvn clean package
    mvn spring-boot:run
    
  2. アプリケーションが実行されたら、curl を使用してアプリケーションをテストできます。次に例を示します。After your application is running, use curl to test your application, for example:

    curl -X GET http://localhost:8080/
    

    App Configuration ストアに入力したメッセージが表示されます。You see the message that you entered in the App Configuration store.

リソースをクリーンアップするClean up resources

次のチュートリアルに進む場合は、このクイックスタートで作成したリソースを再利用できるよう残しておいてください。If you plan to continue to the next tutorial, keep the resources you created in this quickstart for that you can reuse them.

クイック スタートのサンプル アプリケーションの使用を終える場合は、課金を避けるために、このクイック スタートで作成した Azure リソースを削除することができます。If you're finished with the quickstart sample application, delete the Azure resources you created in this quickstart to avoid charges.

重要

リソース グループを削除すると、元に戻すことができません。Deleting a resource group is irreversible. リソース グループとそのすべてのリソースは完全に削除されます。The resource group and all the resources in it are permanently deleted. 間違ったリソース グループやリソースをうっかり削除しないようにしてください。Make sure that you don't accidentally delete the wrong resource group or resources. このサンプルをホストするためのリソースを、保持したいリソースを含むリソース グループ内に作成した場合は、リソース グループを削除する代わりに、各リソースをそれぞれのウィンドウから個別に削除します。If you created the resources for hosting this sample inside a resource group that contains resources you want to keep, delete each resource individually from its respective pane instead of deleting the resource group.

  1. Azure portal にサインインし、 [リソース グループ] を選択します。Sign in to the Azure portal, and select Resource groups.
  2. [名前でフィルター] ボックスにリソース グループの名前を入力します。In the Filter by name box, enter the name of your resource group.
  3. 結果一覧からリソース グループを選択し、行を右クリックするか省略記号 ( ... ) ボタンを使用してコンテキスト メニューを開きます。In the result list, select the resource group, and either right-click the row or use the ellipsis (...) button to open the context menu.
  4. [リソース グループの削除] を選択します。Select Delete resource group.
  5. リソース グループの削除の確認を求めるメッセージが表示されます。You're asked to confirm the deletion of the resource group. 確認のためにリソース グループの名前を入力し、 [削除] を選択します。Enter the name of your resource group to confirm, and select Delete.

しばらくすると、リソース グループとそのすべてのリソースが削除されます。After a few moments, the resource group and all its resources are deleted.

次のステップNext steps

このクイックスタートでは、新しい App Configuration ストアを作成して、Java Spring アプリで使用しました。In this quickstart, you created a new App Configuration store and used it with a Java Spring app. 詳細については、「Azure の Spring」を参照してください。For more information, see Spring on Azure. App Configuration へのアクセスを効率化する Azure マネージド ID を使用する方法については、次のチュートリアルに進んでください。To learn how to use an Azure managed identity to streamline access to App Configuration, continue to the next tutorial.