Heim >Java >javaLernprogramm >Wie kann ich Umgebungsvariablen verwenden, um Datenbankanmeldeinformationen in einer Spring Boot-Anwendung zu verwalten?

Wie kann ich Umgebungsvariablen verwenden, um Datenbankanmeldeinformationen in einer Spring Boot-Anwendung zu verwalten?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-27 04:31:15510Durchsuche

How Can I Use Environment Variables to Manage Database Credentials in a Spring Boot Application?

Verwenden von Umgebungsvariablen in den application.properties von Spring Boot

Hintergrund

Stellen Sie sich eine Spring Boot-Anwendung vor, die in mehreren Umgebungen (lokal, Jenkins, OpenShift). Um eine harte Codierung der MySQL-Anmeldeinformationen zu vermeiden, müssen Sie application.properties dynamisch machen. Als Lösungsvorschlag haben Sie Systemumgebungsvariablen mit denselben Namen wie OpenShift-Umgebungsvariablen erstellt und entsprechende Werte zugewiesen.

Umgebungsvariablen in application.properties verwenden

Um Systemumgebungsvariablen in zu integrieren application.properties, fügen Sie die folgenden Zeilen hinzu:

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}

Wenn Spring Boot initialisiert wird, ruft es diese Umgebungsvariablen ab und ersetzt sie in Ihrem Konfiguration.

Alternativer Ansatz

Ein alternativer Ansatz ist die Verwendung von Spring Boot-Profilen. Fügen Sie application.properties Folgendes hinzu:

spring.profiles.active=local

Erstellen Sie eine neue Eigenschaftendatei mit dem Namen application-local.properties, die Folgendes enthält:

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

Spring Boot lädt die Eigenschaften automatisch aus application-{ Profilname}.properties basierend auf dem Wert von spring.profiles.active.

Das obige ist der detaillierte Inhalt vonWie kann ich Umgebungsvariablen verwenden, um Datenbankanmeldeinformationen in einer Spring Boot-Anwendung 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