Wie öffne ich manuell eine Ruhezustandssitzung?Java

Java-Forum
Anonymous
 Wie öffne ich manuell eine Ruhezustandssitzung?

Post by Anonymous »

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?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post