Heim > Java > javaLernprogramm > Wie geht Spring Boot mit mehreren externen Konfigurationsdateien um, um Standardeigenschaften zu überschreiben?

Wie geht Spring Boot mit mehreren externen Konfigurationsdateien um, um Standardeigenschaften zu überschreiben?

DDD
Freigeben: 2024-11-30 07:33:15
Original
194 Leute haben es durchsucht

How Does Spring Boot Handle Multiple External Configuration Files to Override Default Properties?

Spring Boot und mehrere externe Konfigurationsdateien

Mit Spring Boot können Entwickler externe Konfigurationsdateien laden, um Anwendungseinstellungen anzupassen. Dies kann nützlich sein, um Standardkonfigurationen zu überschreiben oder umgebungsspezifische Eigenschaften anzugeben. Eine häufige Herausforderung besteht jedoch darin, sicherzustellen, dass externe Konfigurationen die Standardkonfigurationen überschreiben, insbesondere wenn mehrere Dateien beteiligt sind.

Die Reihenfolge der Eigentumsauflösung

Spring Boot folgt einer bestimmten Reihenfolge beim Auflösen von Eigenschaftswerten:

  1. Befehlszeilenargumente
  2. System Eigenschaften
  3. Umgebungsvariablen
  4. JNDI-Attribute
  5. Standardeigenschaften
  6. Anwendungseigenschaften außerhalb des JAR
  7. Anwendungseigenschaften innerhalb des JAR
  8. @PropertySource-Anmerkungen
  9. Spring Boot-Eigenschaft Quellen (z. B. application.properties)

Standardeigenschaften mit externen Dateien überschreiben

Um Standardeigenschaften mit externen Dateien zu überschreiben, verwenden Sie spring.config.location Eigentum. Diese Eigenschaft akzeptiert eine durch Kommas getrennte Liste von Dateipfaden oder URLs. Sie können Dateien im Klassenpfad oder im externen Konfigurationsordner angeben.

Um beispielsweise die Standardeigenschaften mit externen Dateien im aktuellen Arbeitsverzeichnis zu überschreiben, verwenden Sie Folgendes:

-Dspring.config.location=file:./config
Nach dem Login kopieren

Allerdings In früheren Versionen von Spring Boot (vor 2.0) hatte spring.config.location ein anderes Verhalten. Es würde nur application.properties und keine anderen Eigenschaftsdateien überschreiben.

Verwendung von spring.config.additional-location

In Spring Boot 2.0 und höher spring.config. location überschreibt die Standardeigenschaften, statt sie zu ergänzen. Um die Standardeigenschaften beizubehalten und gleichzeitig zusätzliche einzuschließen, verwenden Sie spring.config.additional-location.

Um beispielsweise die Standardeigenschaften beizubehalten und eine Datei aus dem Klassenpfad hinzuzufügen, verwenden Sie:

-Dspring.config.location=file:./config
-Dspring.config.additional-location=classpath:job1.properties,classpath:job2.properties
Nach dem Login kopieren

Durch die Angabe von spring.config.location und spring.config.additional-location können Sie sicherstellen, dass externe Dateien die Standarddateien überschreiben und gleichzeitig alle im Standard definierten benutzerdefinierten Eigenschaften beibehalten Konfiguration.

Das obige ist der detaillierte Inhalt vonWie geht Spring Boot mit mehreren externen Konfigurationsdateien um, um Standardeigenschaften zu überschreiben?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage