Kann ich die manuell laden @ConfigurationProperties ohne die Feder AppContext?

Gibt es eine Möglichkeit, eine Klasse zu laden, die mit gekennzeichnet @ConfigurationProperties ohne Verwendung einer Feder Kontext direkt? Grundsätzlich will ich wiederverwenden, der alle intelligenten Logik, dass der Frühling tut, aber für eine Bohne, die ich manuell instanziieren außerhalb der Feder-Lebenszyklus.

Habe ich eine Bohne, die Lasten gerne im Frühjahr (Boot) und ich kann Spritzen Sie diese in meinen anderen Dienst Bohnen:

@ConfigurationProperties(prefix="my")
public class MySettings {
    String property1;
    File property2;
} 

Sehen, der Frühling docco für mehr info http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-external-config-command-line-args

Nun brauche ich aber Zugriff auf die bean aus einer Klasse, die erstellt wird, die außerhalb des Frühlings (von Hibernate). Die Klasse wird erstellt, so früh in der app-Startprozess, dass Spring Boot noch nicht aus dem Anwendungskontext zur Verfügung durch die klassischen lookup-helper-Methoden oder roll-meine-eigene statische Referenzen.

Also habe ich stattdessen etwas tun wollen wie:

MySettings mySettings = new MySettings(); 
SpringPropertyLoadingMagicClass loader = new SpringPropertyLoadingMagicClass();
loader.populatePropertyValues(mySettings);

Haben und MySettings am Ende mit allen seinen Werten geladen, von der Befehlszeile aus, Eigenschaften, app.Eigenschaften, etc. Gibt es eine Klasse, die im Frühjahr die soetwas macht oder ist das ganze zu verwoben mit dem Anwendungs-Kontext?

Natürlich könnte ich auch einfach das laden der Properties-Datei selbst, aber ich möchte wirklich zu halten, Spring Boot die Logik um, indem Sie das Befehlszeilen Variablen (z.B.-mein.eigenschaft1=xxx), system-Variablen oder-Anwendung.Eigenschaften oder sogar eine yaml-Datei, sowie seine Logik um entspannt verbindlich und Typ-Konvertierung (z.B. property2 ist eine Datei) damit das ganze funktioniert genauso, als wenn im Frühling Kontext.

Möglich oder Wunschtraum?

Vielen Dank für Ihre Hilfe!

InformationsquelleAutor zonski | 2014-11-14
Schreibe einen Kommentar