Sie können dies tun, mit Spring Cloud Config
nur zum Zwecke der Illustration, hier ist eine relativ schnelle Art und Weise dynamische Eigenschaftenüberschreibungen zur Laufzeit zu sehen:
Erstens, für Ihre Bohne Lage sein geändert zu holen Eigenschaften, müssen Sie es mit
@RefreshScope
Fügen Sie die Federwolke Abhängigkeit zu Ihrem Frühjahr Boot App mit Anmerkungen versehen, für gradle zB
compile group: 'org.springframework.cloud', name: 'spring-cloud-starter', version: '1.1.1.RELEASE'
(NB Sie müssen auch die Feder Boot Aktor Abhängigkeit.)
Mit der App ausgeführt wird, können Sie Ihre aktuelle Konfiguration an zB
http://localhost:8080/env
zB anzeigen, wenn Sie eine Eigenschaft ‚haben meine. Eigenschaft 'in application.properties, sehen Sie etwas wie:
Um den Wert zu ändern, POST mein.property = Wert2 zu/env als application/x-www-form-urlencoded
zB
curl -X POST http://localhost:8080 -d my.property=value2
GET/env wieder und Sie werden der neue Wert erscheint unter dem "Manager" Abschnitt
sehen
Um die geänderten Eigenschaften anzuwenden, führen Sie einen leeren POST nach/refresh durch. Jetzt hat Ihre Bean den neuen Wert.
Ich verstehe nicht. Sie können alle möglichen Datenquellen für Ihre Umgebung verwenden. Haben Sie die Dokumentation gelesen: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config? Warum funktioniert das nicht? –