Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przewodniku Szybki start uwzględnisz aplikacja systemu Azure Configuration w aplikacji Java Spring, aby scentralizować magazyn i zarządzanie ustawieniami aplikacji niezależnie od kodu.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz je bezpłatnie.
- Magazyn usługi App Configuration, jak pokazano w samouczku dotyczącym tworzenia magazynu konfiguracji aplikacji.
- Obsługiwany zestaw Java Development Kit (JDK) w wersji 11.
- Apache Maven w wersji 3.0 lub nowszej.
- Aplikacja Spring Boot. Jeśli go nie masz, utwórz projekt Maven za pomocą narzędzia Spring Initializr. Pamiętaj, aby wybrać pozycję Projekt Maven i w obszarze Zależności dodaj zależność Spring Web , a następnie wybierz pozycję Java w wersji 8 lub nowszej.
Dodawanie wartości klucza
Dodaj następującą wartość klucza do magazynu App Configuration i pozostaw wartości domyślne Etykieta i Typ zawartości. Aby uzyskać więcej informacji na temat dodawania wartości klucz-wartości do magazynu przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia, przejdź do artykułu Create a key-value (Tworzenie wartości klucza).
| Klawisz | Wartość |
|---|---|
| /application/config.message | Hello (Cześć) |
Nawiązywanie połączenia z magazynem usługi App Configuration
Teraz, gdy masz sklep App Configuration, możesz użyć szablonu startowego Spring Cloud Azure Config, aby aplikacja komunikowała się z utworzonym magazynem App Configuration.
Aby zainstalować moduł startowy Spring Cloud Azure Config, dodaj następującą zależność do pliku pom.xml :
<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>6.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Domyślnie biblioteka łączy się z magazynem App Configuration za pomocą tożsamości zarządzanej. Postępuj zgodnie z instrukcjami, aby przypisać poświadczenia roli Czytelnik danych konfiguracji aplikacji. Przed uruchomieniem aplikacji należy zezwolić na wystarczający czas na propagację uprawnień. Następnie utwórz nowy plik o nazwie AppConfigCredential.java i dodaj następujące wiersze:
import org.springframework.stereotype.Component; import com.azure.data.appconfiguration.ConfigurationClientBuilder; import com.azure.identity.DefaultAzureCredentialBuilder; import com.azure.spring.cloud.appconfiguration.config.ConfigurationClientCustomizer; @Component public class AppConfigCredential implements ConfigurationClientCustomizer { @Override public void customize(ConfigurationClientBuilder builder, String endpoint) { builder.credential(new DefaultAzureCredentialBuilder().build()); } }Uwaga / Notatka
Ponadto możesz użyć uwierzytelniania platformy Azure Spring Cloud w celu udostępnienia informacji o uwierzytelnianiu. Podczas uwierzytelniania przy użyciu konfiguracji platformy Azure Spring umożliwia korzystanie z tego samego uwierzytelniania dla wszystkich bibliotek platformy Azure Spring.
Następnie utwórz konfigurację Bootstrap Configuration, tworząc plik w
spring.factorieskatalogu i dodaj następujące wiersze i aktualizującresources/META-INFcom.example.MyApplicationprzy użyciu nazwy aplikacji i pakietu:org.springframework.cloud.bootstrap.BootstrapConfiguration=\ com.example.MyApplicationUtwórz nowy plik o nazwie application.properties w katalogu resources aplikacji i dodaj następujący wiersz do pliku.
spring.config.import=azureAppConfiguration spring.cloud.azure.appconfiguration.stores[0].endpoint= ${APP_CONFIGURATION_ENDPOINT}
Odczyt ze sklepu App Configuration
Aby użyć szablonu startowego Spring Cloud Azure Config, aby aplikacja komunikowała się z utworzonym magazynem App Configuration, skonfiguruj aplikację, wykonując następujące kroki.
Utwórz nowy plik Java o nazwie MyProperties.java i dodaj następujące wiersze:
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; } }Utwórz nowy plik Java o nazwie HelloController.java i dodaj następujące wiersze:
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(); } }Otwórz automatycznie wygenerowany test jednostkowy i zaktualizuj go, aby wyłączyć aplikacja systemu Azure Configuration lub spróbuje załadować z usługi podczas uruchamiania testów jednostkowych.
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() { } }
Lokalne kompilowanie i uruchamianie aplikacji
Ustaw zmienną środowiskową o nazwie APP_CONFIGURATION_ENDPOINT i ustaw ją na klucz dostępu do magazynu usługi App Configuration. W wierszu polecenia uruchom następujące polecenie i uruchom ponownie wiersz polecenia, aby umożliwić wprowadzenie zmiany:
setx APP_CONFIGURATION_ENDPOINT "<endpoint-of-your-app-configuration-store>"Jeśli używasz programu Windows PowerShell, uruchom następujące polecenie:
$Env:APP_CONFIGURATION_ENDPOINT = "<endpoint-of-your-app-configuration-store>"Jeśli używasz systemu macOS lub Linux, uruchom następujące polecenie:
export APP_CONFIGURATION_ENDPOINT='<endpoint-of-your-app-configuration-store>'Otwórz wiersz polecenia w katalogu głównym i uruchom następujące polecenia, aby skompilować aplikację Spring Boot za pomocą narzędzia Maven i uruchomić ją.
mvn clean package mvn spring-boot:runPo uruchomieniu aplikacji użyj narzędzia curl , aby przetestować aplikację, na przykład:
curl -X GET http://localhost:8080/Zostanie wyświetlony komunikat wprowadzony w magazynie App Configuration.
Czyszczenie zasobów
Jeśli nie chcesz nadal korzystać z zasobów utworzonych w tym artykule, usuń utworzoną tutaj grupę zasobów, aby uniknąć naliczania opłat.
Ważne
Usunięcie grupy zasobów jest nieodwracalne. Grupa zasobów i wszystkie zasoby w niej są trwale usuwane. Upewnij się, że nie usuniesz przypadkowo nieprawidłowej grupy zasobów ani zasobów. Jeśli zasoby dla tego artykułu zostały utworzone w grupie zasobów zawierającej inne zasoby, które chcesz zachować, usuń każdy zasób oddzielnie z odpowiedniego okienka zamiast usuwać grupę zasobów.
- Zaloguj się do witryny Azure Portal i wybierz pozycję Grupy zasobów.
- W polu Filtruj według nazwy wprowadź nazwę grupy zasobów.
- Na liście wyników wybierz nazwę grupy zasobów, aby wyświetlić przegląd.
- Wybierz pozycję Usuń grupę zasobów.
- Zobaczysz prośbę o potwierdzenie usunięcia grupy zasobów. Wprowadź nazwę grupy zasobów, aby potwierdzić, a następnie wybierz pozycję Usuń.
Po kilku chwilach grupa zasobów i wszystkie jej zasoby zostaną usunięte.
Następne kroki
W tym przewodniku Szybki start utworzono nowy magazyn App Configuration i użyto go z aplikacją Java Spring. Aby uzyskać więcej informacji, zobacz Spring on Azure (Platforma Spring na platformie Azure). Aby uzyskać więcej pytań, zobacz dokumentację referencyjną, zawiera ona wszystkie szczegółowe informacje na temat działania biblioteki konfiguracji spring cloud aplikacja systemu Azure. Aby dowiedzieć się, jak umożliwić aplikacji Java Spring dynamiczne odświeżanie ustawień konfiguracji, przejdź do następnego samouczka.