Guia de início rápido: adicionar sinalizadores de recursos a um aplicativo Spring Boot

Neste quickstart, irá criar uma feature flag no Azure App Configuration e usá-la para controlar dinamicamente as aplicações do Spring Boot, criando uma implementação de gestão de funcionalidades de ponta a ponta.

As bibliotecas de Gestão de Funcionalidades do Spring Boot não têm dependência de quaisquer bibliotecas Azure. Eles integram-se perfeitamente com o App Configuration através do seu provedor de configuração para Spring Boot.

Pré-requisitos

Adicionar um sinalizador de recurso

Adicione um sinalizador de recurso chamado Beta à loja de Configuração do Aplicativo e deixe Rótulo e Descrição com seus valores padrão. Para obter mais informações sobre como adicionar sinalizadores de recursos a uma loja usando o portal do Azure ou a CLI, vá para Criar um sinalizador de recurso. Nesta fase, a caixa de seleção Ativar sinalizador de recurso deve ser desmarcada.

Captura de tela do sinalizador de recurso de ativação chamado Beta.

Criar uma aplicação de consola

  1. Crie um novo projeto Spring Boot:

    1. Aceda ao Spring Initializr.

    2. Especifique as seguintes opções:

      • Gere um projeto do Maven com Java.
      • Especifique uma versão do Spring Boot igual ou superior a 3.0.
      • Especifique os nomes do Grupo e do Artefacto da aplicação. Este artigo usa com.example e demo.
    3. Depois de especificar as opções anteriores, selecione Gerar projeto. Descarregue e extraia o projeto para o seu computador local.

  2. Localize-pom.xml no diretório raiz da sua aplicação e abre-o num editor de texto.

  3. Adicione o seguinte à lista de:<dependencies>

    <dependency>
        <groupId>com.azure.spring</groupId>
        <artifactId>spring-cloud-azure-appconfiguration-config</artifactId>
    </dependency>
    <dependency>
        <groupId>com.azure.spring</groupId>
        <artifactId>spring-cloud-azure-feature-management</artifactId>
    </dependency>
    
  4. Adicione a seguinte secção <dependencyManagement> para gerir as versões da biblioteca Spring Cloud Azure:

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.azure.spring</groupId>
                <artifactId>spring-cloud-azure-dependencies</artifactId>
                <version>7.2.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    
  5. Navegue até o resources diretório do seu aplicativo e abra o application.properties arquivo ou application.yaml .

    Você usa o DefaultAzureCredential para autenticar na sua loja de configuração de aplicativos. Para que a autorização funcione, você precisa conceder a função Leitor de Dados de Configuração do Aplicativo à credencial usada pelo aplicativo. Para instruções, consulte Autenticação com credenciais de token. Certifique-se de permitir tempo suficiente para que a permissão se propague antes de executar a sua aplicação.

    spring.config.import=azureAppConfiguration
    spring.cloud.azure.appconfiguration.stores[0].endpoint= ${AZURE_APPCONFIG_ENDPOINT}
    spring.cloud.azure.appconfiguration.stores[0].feature-flags.enabled=true
    
  6. Atualize o DemoApplication.java ficheiro no diretório de pacotes da sua aplicação com o seguinte código:

    import org.springframework.boot.CommandLineRunner;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.context.annotation.Bean;
    
    import com.azure.spring.cloud.feature.management.FeatureManager;
    
    @SpringBootApplication
    public class DemoApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(DemoApplication.class, args);
        }
    
        @Bean
        public CommandLineRunner runner(FeatureManager featureManager) {
            return args -> {
                System.out.println("Beta is enabled: " + featureManager.isEnabled("Beta"));
            };
        }
    }
    
  7. Defina uma variável de ambiente chamada AZURE_APPCONFIG_ENDPOINT e defina-a para o ponto final da sua loja de Configuração de Aplicações. Na linha de comando, execute o seguinte comando e reinicie o prompt de comando para permitir que a alteração entre em vigor:

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

    Reinicie o prompt de comando para permitir que a alteração entre em vigor. Valide se ele está definido corretamente imprimindo o valor da variável de ambiente.

  8. Constrói e executa a tua aplicação Spring Boot com o Maven.

    mvn clean package
    mvn spring-boot:run
    
  9. No portal de Configuração do Aplicativo, selecione Gerenciador de Recursos e altere o estado do sinalizador do recurso Beta para Ativado, usando a alternância na coluna Habilitado .

    Chave Estado
    Beta Ligado
  10. Reinicie o aplicativo. A aplicação vai imprimir o seguinte:

    Beta is enabled: true
    

Limpar recursos

Se não quiser continuar a utilizar os recursos criados neste artigo, elimine o grupo de recursos que criou aqui para evitar cobranças.

Importante

A eliminação de um grupo de recursos é irreversível. O grupo de recursos e todos os recursos nele contidos são excluídos permanentemente. Certifique-se de não excluir acidentalmente o grupo de recursos ou recursos errados. Se você criou os recursos para este artigo dentro de um grupo de recursos que contém outros recursos que deseja manter, exclua cada recurso individualmente de seu respetivo painel em vez de excluir o grupo de recursos.

  1. Entre no portal do Azure e selecione Grupos de recursos.
  2. Na caixa Filtrar por nome, introduza o nome do seu grupo de recursos.
  3. Na lista de resultados, selecione o nome do grupo de recursos para ver uma visão geral.
  4. Selecione Eliminar grupo de recursos.
  5. É-lhe pedido que confirme a eliminação do grupo de recursos. Insira o nome do grupo de recursos a ser confirmado e selecione Excluir.

Após alguns momentos, o grupo de recursos e todos os seus recursos são excluídos.

Próximos passos

Nesta introdução rápida, criou um novo repositório de Configuração de Aplicativos e utilizou-o para gerir funcionalidades numa aplicação Spring Boot através das bibliotecas de Gestão de Funcionalidades.