Frage

Kann ich etwas tun:

  <object id="mydb" type="string">
    <value>"blah"</value> <-- note that <value> tag does not really exist
  </object>

Damit ich es später wie so verwenden:

  <object id="Someobject" type="Sometype">
    <property name="ConnectionString" ref="mydb"/>
  </object>

EDIT: Das war SpringFramework.NET Lösung, die ich suchte. Sieht aus wie PropertyPlaceholderConfigurer auch dort vorhanden ist. Vielen Dank allen.

War es hilfreich?

Lösung

Mit Spring built-in PropertyPlaceholdConfigurer :

<bean id="PropertyPlaceholderConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
   <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
   <property name="location" value="classpath*:/application.properties"/>
</bean>

 <bean id="Someobject" class="somepackage.Sometype">
   <property name="connectionString" value="${mydb}"/>
 </bean>

Einstellung SYSTEM_PROPERTIES_MODE_OVERRIDE können über die Kommandozeile die Eigenschaft überschrieben wird.

Andere Tipps

Verwenden Sie Platzhalter zum Beispiel $ {Magie} und definieren den Schlüssel / Wert in einem Immobilien mit einem Postprocessor entlang Datei. Google für Federpostprozessor Platzhalter ...

Ich sehe keinen Vorteil auf dem Weg überhaupt. Es ist alles noch gerade Konfiguration.

Manchmal externalisieren Datenbank-Verbindungszeichenfolgen zu einer .properties-Datei und bekommen sie auf diese Weise. Ich denke, dass mehr Sinn als Ihr Vorschlag macht.

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