Skip to content

Latest commit

 

History

History
180 lines (130 loc) · 7.14 KB

File metadata and controls

180 lines (130 loc) · 7.14 KB
title Quickstart to learn how to use Azure App Configuration
description In this quickstart, create a Java Spring app with Azure App Configuration to centralize storage and management of application settings separate from your code.
services azure-app-configuration
author mrm9084
ms.service azure-app-configuration
ms.devlang java
ms.topic quickstart
ms.date 03/16/2026
ms.custom devx-track-java, mode-api, devx-track-extended-java
ms.author mametcal

Quickstart: Create a Java Spring app with Azure App Configuration

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

Add a key-value

Add the following key-value to the App Configuration store and leave Label and Content Type with their default values. For more information about how to add key-values to a store using the Azure portal or the CLI, go to Create a key-value.

Key Value
/application/config.message Hello

Connect to an App Configuration store

Now that you have an App Configuration store, you can use the Spring Cloud Azure Config starter to have your application communicate with the App Configuration store that you create.

To install the Spring Cloud Azure Config starter module, add the following dependency to your pom.xml file:

<dependencies>
    ...
    <dependency>
        <groupId>com.azure.spring</groupId>
        <artifactId>spring-cloud-azure-appconfiguration-config-web</artifactId>
    </dependency>
</dependencies>

<dependencyManagement>
    <dependencies>
        <dependency>
        <groupId>com.azure.spring</groupId>
        <artifactId>spring-cloud-azure-dependencies</artifactId>
        <version>7.1.0</version>
        <type>pom</type>
        <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
  1. By default, the library connects to the App Configuration store by Managed Identity. Follow the instructions to assign your credential the App Configuration Data Reader role. Be sure to allow sufficient time for the permission to propagate before running your application.

    [!NOTE] In addition, you can use the Spring Cloud Azure authentication to provide authentication information.

  2. Create a new file named application.properties under the resources directory of your app, and add the following line to the file.

    spring.config.import=azureAppConfiguration
    spring.cloud.azure.appconfiguration.stores[0].endpoint=${AZURE_APPCONFIG_ENDPOINT}

Read from the App Configuration store

To use the Spring Cloud Azure Config starter to have your application communicate with the App Configuration store that you create, configure the application by using the following steps.

  1. Create a new Java file named MyProperties.java, and add the following lines:

    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.stereotype.Component;
    
    @Component
    @ConfigurationProperties(prefix = "config")
    public class MyProperties {
        private String message;
    
        public String getMessage() {
            return message;
        }
    
        public void setMessage(String message) {
            this.message = message;
        }
    }
  2. Create a new Java file named HelloController.java, and add the following lines:

    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class HelloController {
        
        @Autowired
        private MyProperties properties; 
    
        @GetMapping
        public String getMessage() {
            return "Message: " + properties.getMessage();
        }
    }
  3. Open the auto-generated unit test and update to disable Azure App Configuration, or it tries to load from the service when running unit tests.

    import org.junit.jupiter.api.Test;
    import org.springframework.boot.test.context.SpringBootTest;
    
    @SpringBootTest(properties = "spring.cloud.azure.appconfiguration.enabled=false")
    class DemoApplicationTests {
    
        @Test
        void contextLoads() {
        }
    
    }

Build and run the app locally

  1. Set an environment variable named AZURE_APPCONFIG_ENDPOINT, and set it to the access key to your App Configuration store. At the command line, run the following command and restart the command prompt to allow the change to take effect:

    setx AZURE_APPCONFIG_ENDPOINT "<endpoint-of-your-app-configuration-store>"

    If you use Windows PowerShell, run the following command:

    $Env:AZURE_APPCONFIG_ENDPOINT = "<endpoint-of-your-app-configuration-store>"
    

    If you use macOS or Linux, run the following command:

    export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'
  2. Open command prompt to the root directory and run the following commands to build your Spring Boot application with Maven and run it.

    mvn clean package
    mvn spring-boot:run
  3. After your application is running, use curl to test your application, for example:

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

    You see the message that you entered in the App Configuration store.

Clean up resources

[!INCLUDE azure-app-configuration-cleanup]

Next steps

In this quickstart, you created a new App Configuration store and used it with a Java Spring app. For more information, see Spring on Azure. For further questions see the reference documentation, it has all of the details on how the Spring Cloud Azure App Configuration library works. To learn how to enable your Java Spring app to dynamically refresh configuration settings, continue to the next tutorial.

[!div class="nextstepaction"] Enable dynamic configuration