Ich habe ein ziemlich großes Projekt, bei dem es um Frühling und Winterschlaf geht. Im Moment sichere ich bestimmte Objekte aus dem Ruhezustand in den Speicher und bin dabei auf eine Art Problem gestoßen. Ich habe das folgende Setup.
Klasse A enthält eine Reihe von Grundelementen und eine Klasse B. B enthält Grundelemente und eine Klasse C, die zuvor lazy-loaded war.
Jetzt habe ich diesen
Dienstaufruf 1:
1.) Objekt der Klasse A erstellen
2.) Objekt von abrufen Klasse B
3.) B in A setzen
4.) A zum Speicher hinzufügen
Serviceaufruf 2:
1.) A aus dem Speicher holen
2.) B aus A holen
3.) C aus B holen
4.) auf C operieren
Da C verzögert geladen wird, war es auf eine bestehende Ruhezustandssitzung angewiesen, um sich selbst langsam von B mit Ruhezustand zu laden, zumindest glaube ich, dass dies so ist. Jetzt muss ich jedoch das Lazy Load durchführen, ohne das DAO zu ändern, um eine ID zurückzugeben, und es gibt keine aktuelle Ruhezustandssitzung, in die ich mich mit OpenSessionInView einklinken könnte. Wie lässt sich dieses Problem angesichts der Einschränkungen am besten lösen? Die einzigen Lösungen, die ich gefunden habe, beruhen auf einer ungeeigneten Codeänderung oder einer bestehenden Sitzung, daher denke ich, dass ich möglicherweise manuell eine Ruhezustandssitzung öffnen könnte. Wie würde ich das machen? Gibt es alternativ eine bessere Lösung für dieses Problem?
Wie öffne ich manuell eine Ruhezustandssitzung? ⇐ Java
-
- Similar Topics
- Replies
- Views
- Last post
Mobile version