Frage

Gibt es eine Möglichkeit Feder (v.3.0) Parse-Platzhalter in Dateien zu machen, die nicht .properties sind? Ich weiß, ich kann meine eigenen PropertyPlaceholderConfigurer schreiben, aber ich war für eine „sauberere“ Weg, um es zu tun.

EDIT:

Um genauer zu sein, was ich will eigentlich zu tun ist, Platzhalter-Dateien in .sql zu ersetzen. So werden die Werte der Platzhalter in .properties gespeichert sind, aber die Platzhalter werden in .sql Dateien verwendet wird.

War es hilfreich?

Lösung

Eine PropertyPlaceholderConfigurer Bohne wird Platzhalter in anderen Bean Definitionen ersetzen. Insbesondere aktualisiert er die Werte der Bean-Eigenschaften in Bohne Definitionen ... bevor die Bohnen tatsächlich erstellt werden. Deshalb, wenn Sie PropertyPlaceholderConfigurer verwenden wollte SQL zu ändern, müssten die SQL in Bean Eigenschaftswerte eingebettet werden. Diese Klasse kann nicht ersetzen Eigenschaften in beliebigen Dateien.

Wenn Sie Platzhalter in beliebigen Dateien zu ersetzen, die

Andere Tipps

PropertyPlaceholderConfigurer kann mit einem beliebigen Properties Objekt geliefert werden (via properties Eigenschaft).

Ich weiß nicht, ob Sie Maven, aber wenn Sie das tun, würde ich verwenden Ressource Filterung die Eigenschaften in die sQL-Dateien in deploy Zeit zu injizieren (es gibt ähnliche Lösungen für Ameise, auch) und Spring PropertyPlaceholderConfigurer Verwendung der gleichen Eigenschaftsdateien zur Laufzeit lassen. Auf diese Weise ist alles, wo es hingehört (immerhin der beste Platz für Immobilien ist eine .properties-Datei).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top