Frühjahr Referenz auf eine Eigenschaft einer bean-Eigenschaft

Habe ich eine spring Konfigurations-Datei, die gut funktioniert.

Mein Nächster Schritt war die separate Benutzer-Konfiguration die Eigenschaften von system-Eigenschaften.

Habe ich beschlossen, erstellen Sie eine zusätzliche xml-Datei mit Bohnen, die wird durch den Anwender konfiguriert werden.

Hatte ich problem zu erstellen, nur wenige solcher logischen Bohnen Kapselung von Eigenschaften, die verwendet werden wird durch die wirkliche Klasse Bohnen:

Ich gefunden habe über das Netz eine option zum Verweis Anstand in solcher Weise:

UserConf.xml

<bean id="numberGuess" class="x...">
    <property name="randomNumber" value="5"/>

    <!-- other properties -->
</bean>

SystemConf.xml

<import resource="UserConf.xml" />

<bean id="shapeGuess" class="y...">
    <property name="initialShapeSeed" value="#{ numberGuess.randomNumber }"/>

    <!-- other properties -->
</bean>

Aber mein problem ist, dass ich brauche x... Klasse zu sein, etwas logisches, das sollte nicht initialisiert werden, und ich möchte es nicht preisgeben, info der Klassen-Hierarchie des Systems, da sollte es erst in der Konfigurations-xml-Datei.

Solution1 erstellen Sie ein Java-Objekt repräsentiert diese Eigenschaften:

public class MyProps(...)

und fügen Sie eine Bohne Eltern im Frühjahr-system-Konfiguration:

<bean id="MyProps" class="path to MyProps"/>

in der Seite Benutzer ändern Sie die Vorherige bean:

<bean id="numberGuess" parent="MyProps">
    <property name="randomNumber" value="5"/>

    <!-- other properties -->
</bean>

Solution2 ist die Verwendung von flachen Konfiguration-Datei genau wie die Datenbank.Requisiten, und laden Sie es mit der Fabrik.

Solution3 ist die Verwendung von Spring-Eigenschaft Platzhalter-Konfiguration zu laden Eigenschaften von XML-properties-Datei (z.B. Beispiel), aber hier habe ich einfach nicht wissen, wie man komplexere, verschachtelte Struktur von Eigenschaften (Eigenschaften müssen getrennt von anderen logischen Namen, z.B. minNumber definiert werden, sowohl unter xAlgo und y algo).

Ich nicht gerne neue Java-Klasse nur um mit diesem problem umzugehen oder um meine Benutzer-Konfiguration zu einem flachen props-Datei (muss ich die xml-Struktur), wird Ihr eine andere Lösung??

Wo werden die Eigenschaften in "x" - Klasse verwendet werden?
Sorry, ich bin mir unklar, warum können Sie nicht einfach die properties-Dateien?
in verschiedenen Bohnen in der SystemConf-Datei
McIntyre: ich gab nur ein einfaches Beispiel für eine Eigenschaft , ein Teil meiner Eigenschaften und Bohnen werden könnte, und werden mit einer komplexen XML-Struktur
Hinzugefügt haben Lösung 3 das ist besser, wenn ich in der Lage, trennen Sie die Eigenschaften, um verschiedene logische Teile

InformationsquelleAutor Michael | 2013-01-10

Schreibe einen Kommentar