Heim >Datenbank >MySQL-Tutorial >Wie verwende ich Umgebungsvariablen und Spring Boot-Profile, um die Konfiguration in verschiedenen Umgebungen zu verwalten?

Wie verwende ich Umgebungsvariablen und Spring Boot-Profile, um die Konfiguration in verschiedenen Umgebungen zu verwalten?

DDD
DDDOriginal
2024-12-16 18:19:22450Durchsuche

How to Use Environment Variables and Spring Boot Profiles to Manage Configuration in Different Environments?

Verwenden von Umgebungsvariablen in den application.properties von Spring Boot

In Spring Boot-Anwendungen ist es häufig erforderlich, Konfigurationswerte basierend auf der Umgebung dynamisch festzulegen in dem die Anwendung läuft. Dies ist besonders nützlich, wenn Sie Anwendungen in verschiedenen Umgebungen bereitstellen, z. B. in der Entwicklung, beim Testen und in der Produktion.

Um Umgebungsvariablen in application.properties zu verwenden, müssen Sie sie entsprechend deklarieren. Normalerweise geschieht dies durch das Festlegen von Umgebungsvariablen in Ihrem Betriebssystem oder im Build-Prozess. Sobald die Umgebungsvariablen festgelegt sind, können Sie sie in application.properties mithilfe der ${ Variablenname }-Syntax referenzieren.

Betrachten Sie beispielsweise den folgenden Codeausschnitt:

spring.datasource.url = ${OPENSHIFT_MYSQL_DB_HOST}:${OPENSHIFT_MYSQL_DB_PORT}/nameofDB
spring.datasource.username = ${OPENSHIFT_MYSQL_DB_USERNAME}
spring.datasource.password = ${OPENSHIFT_MYSQL_DB_PASSWORD}

Hier Wir gehen beispielsweise davon aus, dass die Umgebungsvariablen wie folgt festgelegt wurden:

OPENSHIFT_MYSQL_DB_HOST=jdbc:mysql://localhost
OPENSHIFT_MYSQL_DB_PORT=3306
OPENSHIFT_MYSQL_DB_USERNAME=root
OPENSHIFT_MYSQL_DB_PASSWORD=123asd

Wenn diese Umgebungsvariablen festgelegt sind, wird die Datei application.properties automatisch gefüllt mit den entsprechenden Werten.

Ein anderer Ansatz besteht darin, Spring Boot-Profile zu verwenden, um unterschiedliche Konfigurationswerte für verschiedene Umgebungen festzulegen. Dies erfolgt durch die Erstellung von application-{profile-name}.properties-Dateien, wobei {profile-name} der Name der Umgebung ist. Sie könnten beispielsweise die Dateien „application-local.properties“, „application-jenkins.properties“ und „application-openshift.properties“ für die lokale, die Jenkins- bzw. die OpenShift-Umgebung erstellen.

Jede dieser Dateien würde die enthalten geeignete Konfigurationswerte für diese Umgebung. Beispielsweise könnte application-local.properties Folgendes enthalten:

spring.datasource.url = jdbc:mysql://localhost:3306/nameofDB
spring.datasource.username = root
spring.datasource.password = 123asd

Dann können Sie mit dem Befehlszeilenargument --spring.profiles.active angeben, welches Profil beim Starten der Anwendung verwendet werden soll. Um beispielsweise das lokale Profil zu verwenden, würden Sie Folgendes ausführen:

java -jar app.jar --spring.profiles.active=local

Die Verwendung von Umgebungsvariablen oder Spring Boot-Profilen bietet eine flexible und wartbare Möglichkeit, Konfigurationswerte für Ihre Anwendung in verschiedenen Umgebungen festzulegen.

Das obige ist der detaillierte Inhalt vonWie verwende ich Umgebungsvariablen und Spring Boot-Profile, um die Konfiguration in verschiedenen Umgebungen zu verwalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn