Kann man verschachtelte Platzhalter aus einer Eigenschaftendatei laden? Ich versuche eine URL dynamisch zu laden.Laden von geschachtelten Platzhaltern aus der Eigenschaftendatei mit Spring
Zum Beispiel, wenn meine Eigenschaften Datei enthält
my.url=http://localhost:8888/service/{nestedProperty}/
Gibt es eine Möglichkeit in Werte laden für {nestedProperty} zur Laufzeit? Ähnlich dem Verhalten eines ResourceBundle. Wenn ja, wie könnte ich den String effektiv instantiieren? So weit denke ich
<bean id="myURLString" class="java.lang.String" scope="prototype" lazy-init="true">
<property name="URL" value="${my.url}" />
</bean>
... aber ich bin nicht sicher, welche Eigenschaften zu verschachteln. Ich möchte eine Bohne bekommen Anmerkungen, wenn möglich verwenden, obwohl ich zur Zeit etwas entlang der Linien von
ctx.getBean("myURLString", String.class, new Object[] { nestedProperty});
ich in PropertyPlaceholderConfigurer habe gesucht haben und einige andere Eigenschaften Datei Fragen hier, aber ich kann nicht scheinen, um herauszufinden, ob das überhaupt möglich ist.
sollte ich auch anmerken, dass ich aus meinem Code dynamisch diese verschachtelte Eigenschaft laden möchten, oder zumindest zu manipulieren sie dort von
Müsste ich diese Eigenschaft nicht explizit in meiner Bean-Definition definieren? – lase
'NestedProperty' bezieht sich auf die Eigenschaft dieses Namens - die zweite Zeile des Beispiels - keine Bean. Spring lädt alle Eigenschaften in allen konfigurierten Dateien und löst sie gegenseitig auf. Solange Sie Zirkelbezüge vermeiden, geht es Ihnen gut. –
Ermöglicht es mir, die verschachtelten Eigenschaften des ctx.getBean() - Aufrufs dynamisch anzugeben, statt den Eigenschaftsdateiwert von 'nestedProperty' zu verwenden? – lase