Heim > Datenbank > MySQL-Tutorial > Wie kann ich Umgebungsvariablen verwenden, um meine Spring Boot-Anwendung in verschiedenen Umgebungen zu konfigurieren?

Wie kann ich Umgebungsvariablen verwenden, um meine Spring Boot-Anwendung in verschiedenen Umgebungen zu konfigurieren?

Linda Hamilton
Freigeben: 2024-12-09 16:00:21
Original
958 Leute haben es durchsucht

How Can I Use Environment Variables to Configure My Spring Boot Application in Different Environments?

Verwenden von Umgebungsvariablen in den application.properties von Spring Boot

Hintergrund

In Spring Boot enthält die Datei application.properties Konfigurationseinstellungen für die Anwendung. Wenn die Anwendung in verschiedenen Umgebungen (lokal, Jenkins, OpenShift) ausgeführt wird, ist es häufig wünschenswert, diese Einstellungen dynamisch anzupassen. Ein Ansatz, dies zu erreichen, ist die Verwendung von Umgebungsvariablen.

Umgebungsvariablen festlegen

Um Umgebungsvariablen festzulegen, erstellen Sie Systemumgebungsvariablen lokal und in der Jenkins-VM. Stellen Sie sicher, dass diese Variablen dieselben Namen und Werte haben, die in OpenShift verwendet werden. Zum Beispiel:

export OPENSHIFT_MYSQL_DB_HOST="jdbc:mysql://localhost"
export OPENSHIFT_MYSQL_DB_PORT="3306"
export OPENSHIFT_MYSQL_DB_USERNAME="root"
export OPENSHIFT_MYSQL_DB_PASSWORD="123asd"
Nach dem Login kopieren

Umgebungsvariablen in application.properties verwenden

Um Umgebungsvariablen in application.properties zu verwenden, fügen Sie sie einfach mit der Syntax ${VARIABLE_NAME} ein. Zum Beispiel:

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}
Nach dem Login kopieren

Hinweis: Es ist auch möglich, Umgebungsvariablen mit dem Spring Environment-Objekt zu erstellen, aber wie von @Stefan Isele vorgeschlagen, ist die Verwendung einer direkten Variablenersetzung in application.properties möglich ein einfacherer Ansatz.

Verwendung von Spring-Profilen

Eine Alternative zur Verwendung von Umgebungsvariablen ist die Verwendung von Spring-Profilen. Mit diesem Ansatz können Sie mehrere application.properties-Dateien erstellen, die jeweils auf eine bestimmte Umgebung zugeschnitten sind. Spring lädt automatisch die entsprechende Datei basierend auf dem Wert der Eigenschaft spring.profiles.active, die als Umgebungsvariable oder über Befehlszeilenargumente festgelegt werden kann. Beispielsweise könnten Sie die Dateien application-local.properties, application-jenkins.properties und application-openshift.properties erstellen. In diesem Fall würden Sie bei der Bereitstellung auf OpenShift die Variable OPENSHIFT_MYSQL_DB_HOST und spring.profiles.active=openshift festlegen.

Durch die Verwendung von Profilen können Sie vermeiden, dass Datenbankanmeldeinformationen oder andere vertrauliche Informationen in Umgebungsvariablen offengelegt werden, wie sie sind Wird nur zur Konfiguration des aktiven Profils verwendet.

Das obige ist der detaillierte Inhalt vonWie kann ich Umgebungsvariablen verwenden, um meine Spring Boot-Anwendung in verschiedenen Umgebungen zu konfigurieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage