Hallo Forum,
ich habe bisher Hibernate nur in einer lokalen Umgebung getestet und bin begeistert.
Die Frage ist nun: Wie setze ich Hibernate bei einer Netzwerkapplikation ein? Dabei soll nur der Server auf die Datenbank zugreifen und die von Hibernate erstellen Objekte an die Clients verteilen.
Das funtktioniert auch ganz wunderbar, ich komme nur bei Verknüpfungen ins Stolpern. Folgendes Beispiel:
class Mutter >-----1:n----> class Child
List<Child> getChilds();
Normalerweise verknüpfe ich beides in Hibernate problemlos via OneToMany-Verknüpfung und mache mir dann keine Gedanken mehr darum. Wenn ich eine Liste aller Mutter-Objekte haben will wird diese abgerufen, wenn ich davon die ChildObjekte haben will hole ich die via getChilds und Hibernate lädt die dann autmatisch nach.
Das funktioniert aber nicht mehr wenn ich das Mutter-Objekt zum Client übertragen habe, denn dann ist es in keinerlei Session mehr.
Kann mir jemand einen Tipp geben wie ich vorgehen kann wenn ich das vom Server über Hibernate erzeugte Objekt auf dem Client weitervewendet möcht, inkl. der Verknüpfungen?
Ich habe schon überlegt getChilds() in Mutter zu überschreiben damit diese auf dem Server eine Methode anstößt um die Kinder für die Klasse zu laden, bin mir aber nicht sicher ob Hibernate das so gut findet.
Natürlich könnte ich auch einfach kein LazyLoading verwenden, aber gerade bei größeren Anwendungen geht dann viel Komfort beim programmieren verloren.
Vielleicht kann mir von euch jemand auf den richtigen Weg helfen.
Ich danke im Voraus!
Ich danke vielmals.
|