Schnellstart: Hinzufügen von Featurekennzeichnungen zu einer Spring Boot-App

In dieser Schnellstartanleitung erstellen Sie ein Feature-Flag in Azure App Configuration und verwenden es, um Spring Boot-Apps dynamisch zu steuern, um eine End-to-End-Implementierung der Featureverwaltung zu erstellen.

Die Spring Boot Feature Management-Bibliotheken haben keine Abhängigkeit von Azure-Bibliotheken. Über ihren Spring Boot-Konfigurationsanbieter lassen sie sich nahtlos in App Configuration integrieren.

Voraussetzungen

Hinzufügen eines Featureflags

Fügen Sie dem App Configuration-Speicher ein Featureflag mit dem Namen Beta hinzu, und behalten Sie die Standardwerte für Bezeichnung und Beschreibung bei. Weitere Informationen zum Hinzufügen von Featureflags zu einem Speicher mithilfe des Azure-Portals oder der CLI finden Sie unter Erstellen eines Featureflags. In dieser Phase sollte das Kontrollkästchen "Feature-Flag aktivieren" nicht ausgewählt sein.

Screenshot: Aktivieren eines Featureflags namens „Beta“.

Erstellen einer Konsolen-App

  1. Erstellen Eines neuen Spring Boot-Projekts:

    1. Wechseln Sie zum Spring Initializr.

    2. Verwenden Sie die folgenden Optionen:

      • Generieren Sie ein Maven-Projekt mit Java.
      • Geben Sie eine Spring Boot-Version an, die gleich oder größer als 3.0 ist.
      • Geben Sie Namen für die Gruppe und das Artefakt für Ihre Anwendung an. In diesem Artikel werden com.example und demo verwendet.
    3. Wählen Sie nach Angabe der vorherigen Optionen die Option Projekt generieren aus. Laden Sie das Projekt herunter, und extrahieren Sie es auf Ihren lokalen Computer.

  2. Suchen Sie pom.xml im Stammverzeichnis Ihrer App, und öffnen Sie sie in einem Text-Editor.

  3. Fügen Sie der Liste der <dependencies> folgenden Elemente hinzu:

    <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. Fügen Sie den folgenden Abschnitt <dependencyManagement> hinzu, um die Versionen der Spring Cloud Azure-Bibliothek zu verwalten:

    <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. Navigieren Sie zum Verzeichnis resources Ihrer App, und öffnen Sie die Datei application.properties oder application.yaml.

    Sie verwenden die DefaultAzureCredential für die Authentifizierung beim App Configuration-Speicher. Damit die Autorisierung funktioniert, müssen Sie der Rolle " App-Konfigurationsdatenleser " die von Ihrer App verwendeten Anmeldeinformationen erteilen. Anweisungen finden Sie unter Authentifizierung mit Tokenanmeldeinformationen. Achten Sie darauf, ausreichend Zeit für die Berechtigung zum Weitergeben zuzulassen, bevor Sie Ihre Anwendung ausführen.

    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. Aktualisieren Sie die DemoApplication.java Datei im Paketverzeichnis Ihrer App mit dem folgenden Code:

    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. Legen Sie eine Umgebungsvariable namens AZURE_APPCONFIG_ENDPOINT fest, und legen Sie sie auf den Endpunkt Ihres App-Konfigurationsspeichers fest. Führen Sie an der Befehlszeile den folgenden Befehl aus, und starten Sie die Eingabeaufforderung neu, damit die Änderung wirksam wird:

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

    Starten Sie die Eingabeaufforderung neu, damit die Änderung wirksam wird. Überprüfen Sie, ob sie richtig festgelegt wurde, indem Sie den Wert der Umgebungsvariablen ausdrucken.

  8. Erstellen und ausführen Sie Ihre Spring Boot-Anwendung mit Maven.

    mvn clean package
    mvn spring-boot:run
    
  9. Wählen Sie im App Configuration-Portal den Feature-Manager aus. Ändern Sie den Status des Featureflags Beta in Ein, indem Sie den Umschalter in der Spalte Aktiviert verwenden.

    Schlüssel Staat
    Beta Andererseits
  10. Starten Sie die Anwendung neu. Die Anwendung druckt Folgendes:

    Beta is enabled: true
    

Bereinigen von Ressourcen

Wenn Sie die in diesem Artikel erstellten Ressourcen nicht mehr verwenden möchten, löschen Sie die erstellte Ressourcengruppe, um Kosten zu vermeiden.

Wichtig

Das Löschen einer Ressourcengruppe kann nicht rückgängig gemacht werden. Die Ressourcengruppe und alle darin enthaltenen Ressourcen werden unwiderruflich gelöscht. Achten Sie daher darauf, dass Sie nicht versehentlich die falsche Ressourcengruppe oder die falschen Ressourcen löschen. Falls Sie die Ressourcen für diesen Artikel in einer Ressourcengruppe erstellt haben, die andere beizubehaltende Ressourcen enthält, löschen Sie die Ressourcen einzeln über den entsprechenden Bereich, statt die Ressourcengruppe zu löschen.

  1. Melden Sie sich beim Azure-Portal an, und klicken Sie auf Ressourcengruppen.
  2. Geben Sie im Feld Nach Name filtern den Namen Ihrer Ressourcengruppe ein.
  3. Wählen Sie in der Ergebnisliste den Ressourcengruppennamen aus, um eine Übersicht anzuzeigen.
  4. Wählen Sie die Option Ressourcengruppe löschen.
  5. Sie werden aufgefordert, das Löschen der Ressourcengruppe zu bestätigen. Geben Sie zur Bestätigung den Namen Ihrer Ressourcengruppe ein, und klicken Sie auf Löschen.

Daraufhin werden die Ressourcengruppe und alle darin enthaltenen Ressourcen gelöscht.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie einen neuen App-Konfigurationsspeicher erstellt und verwendet, um Features in einer Spring Boot-App über die Featureverwaltungsbibliotheken zu verwalten.