Converteren naar de nieuwe App Configuration-bibliotheek voor Spring Boot
Artikel
Er is een nieuwe versie van de Azure-app-configuratiebibliotheek voor Spring Boot beschikbaar. De versie introduceert nieuwe functies, zoals algemene eigenschappen van Spring Cloud Azure, maar ook enkele belangrijke wijzigingen. Deze wijzigingen zijn niet achterwaarts compatibel met configuratie-instellingen die de vorige bibliotheekversie hebben gebruikt.
Dit artikel bevat een verwijzing naar de wijzigingen en de acties die nodig zijn om te migreren naar de nieuwe bibliotheekversie.
Groeps- en artefact-id's zijn gewijzigd
Alle groeps- en artefact-id's in de Azure-bibliotheken voor Spring Boot worden bijgewerkt zodat deze overeenkomen met een nieuwe indeling. De nieuwe pakketnamen zijn:
De versie 4.7.0 is de eerste 4.x-versie van de bibliotheek. Deze komt overeen met de versie van de andere Spring Cloud Azure-bibliotheken.
Vanaf de versie 4.7.0 maken de App Configuration- en functiebeheerbibliotheken deel uit van de spring-cloud-azure-dependencies stuklijst (stuklijst). Het BOM-bestand zorgt ervoor dat u de versie van de bibliotheken in uw project niet meer hoeft op te geven. De BOM beheert automatisch de versie van de bibliotheken.
Naam van pakketpaden gewijzigd
De pakketpaden voor de spring-cloud-azure-feature-management en spring-cloud-azure-feature-management-web bibliotheken zijn gewijzigd van com.azure.spring.cloud.feature.manager in com.azure.spring.cloud.feature.management en com.azure.spring.cloud.feature.management.web.
Naam van klassen gewijzigd
De volgende klassen zijn gewijzigd:
ConfigurationClientBuilderSetup is hernoemd naar ConfigurationClientCustomizer. De setup methode is hernoemd naar customize.
SecretClientBuilderSetup is hernoemd naar SecretClientCustomizer. De setup methode is hernoemd naar customize.
AppConfigurationCredentialProvider en KeyVaultCredentialProvider zijn verwijderd. In plaats daarvan kunt u algemene configuratie-eigenschappen van Spring Cloud Azure gebruiken of de referenties wijzigen met behulp van ConfigurationClientCustomizer ofSecretClientCustomizer.
Functievlag laden
Functievlagmen ondersteunen nu laden via meerdere sleutel-/labelfilters:
De eigenschap spring.cloud.azure.appconfiguration.stores[0].feature-flags.label is verwijderd. In plaats daarvan kunt spring.cloud.azure.appconfiguration.stores[0].feature-flags.selects[0].label-filter u een labelfilter opgeven.
Clientaanpassers gebruiken
ConfigurationClientCustomizer en SecretClientCustomizer worden gebruikt om de ConfigurationClient en SecretClient instanties aan te passen. U kunt ze gebruiken om de clients te wijzigen voordat ze worden gebruikt om verbinding te maken met App Configuration. Hiermee kunt u elk referentietype gebruiken dat wordt ondersteund door de Azure Identity-bibliotheek. U kunt de clients ook wijzigen om een aangepaste HttpClient of HttpPipeline.
Mogelijke conflicten met globale eigenschappen van Spring Cloud Azure
Met algemene configuratie-eigenschappen van Spring Cloud Azure kunt u uw verbindingen met Azure-services aanpassen. De nieuwe App Configuration-bibliotheek haalt alle algemene of App Configuration-instellingen op die zijn geconfigureerd met algemene configuratie-eigenschappen van Spring Cloud Azure. Uw verbinding met App Configuration verandert als de configuraties zijn ingesteld voor een andere Spring Cloud Azure-bibliotheek.
U kunt dit gedrag overschrijven door de ConfigurationClientCustomizer/SecretClientCustomizer clients te wijzigen.
Waarschuwing
Globale eigenschappen van Spring Cloud Azure bieden mogelijk meer dan één verbindingsmethode, omdat ze automatisch referenties ophalen, zoals omgevingsvariabelen, en deze gebruiken om verbinding te maken met Azure-services. Dit gedrag kan problemen veroorzaken als u een andere verbindingsmethode gebruikt, zoals een beheerde identiteit, en de globale eigenschappen worden overschreven.
Demonstreer de functies van Microsoft Entra ID om identiteitsoplossingen te moderniseren, hybride oplossingen te implementeren en identiteitsbeheer te implementeren.
In deze quickstart maakt u een Java Spring-app met Azure App Configuration om opslag en beheer van toepassingsinstellingen gescheiden van uw code te centraliseren.