Heim >Java >javaLernprogramm >Wie kann ich Spring Boot-Datenbankanmeldeinformationen mithilfe von Umgebungsvariablen in verschiedenen Umgebungen verwalten?
Verwendung von Umgebungsvariablen in den Application.properties von Spring Boot
Bei der Bereitstellung einer Spring Boot-Anwendung in verschiedenen Umgebungen ist es wichtig, harte Codierung zu vermeiden Datenbankanmeldeinformationen in application.properties. Um dieses Problem zu beheben, können Umgebungsvariablen dynamisch in der Eigenschaftendatei referenziert werden.
Um diesen Ansatz zu nutzen, führen Sie die folgenden Schritte aus:
1. Erstellen Sie Systemumgebungsvariablen
Erstellen Sie Umgebungsvariablen lokal und auf allen anderen relevanten virtuellen Maschinen. Benennen Sie diese Variablen genauso wie ihre OpenShift-Gegenstücke und weisen Sie entsprechende Werte zu:
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"
2. Referenzieren von Umgebungsvariablen in application.properties
Um Umgebungsvariablen in application.properties einzuschließen, verwenden Sie die folgende Syntax:
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}
3. Alternativer Ansatz (empfohlen)
Eine prägnantere und handlichere Lösung, die von @Stefan Isele vorgeschlagen wurde, ist jedoch die Verwendung von Spring-Profilen:
Spring liest automatisch die entsprechende Eigenschaftendatei basierend auf dem angegebenen Profil.
Durch Befolgen dieser Techniken können Sie dies tun Konfigurieren Sie Ihre Spring Boot-Anwendung dynamisch basierend auf der Umgebung, in der sie bereitgestellt wird, ohne vertrauliche Informationen in application.properties fest codieren zu müssen.
Das obige ist der detaillierte Inhalt vonWie kann ich Spring Boot-Datenbankanmeldeinformationen mithilfe von Umgebungsvariablen in verschiedenen Umgebungen verwalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!