Hibernate Baum Traversierung

Artorius

Mitglied Plutonium
Hallo zusammen,
zur Abbildung einer Unternehmensstruktur existiert eine Datenbanktabelle, die Abteilungen zu Unterabateilungen in Beziehung setzt.
Beispiel:
ID SUBID
1 2
1 3
2 4
2 5
4 6
5 7

Abteilung 1 hat als Unterabteilungen die 2 und 3.
Die 2 wiederum die Unterabteilungen 4 und 5 usw...
Diese Datenbankstruktur ist fest vorgegeben.

Ich suche nun eine Möglichkeit, wie ich effizient alle Unterabteilungen oder Oberabteilungen einer Abteilung auslesen kann. Das Auslesen dieser IDs würde reichen.

Ich weis, dass dies zum Beispiel mithilfe von "connect by" in Oracle leicht zu machen ist, möchte aber datenbankunabhängig bleiben.

Mittels Schleifen und vielen Abfragen kann ich das machen, frage mich aber, ob Hibernate da nicht bessere Möglichkeiten bietet, um einen Baum auszulesen. Würde mich über ein paar Ideen freuen!

*gruß*
Artorius
 

Artorius

Mitglied Plutonium
Hallo,
ja Materialized Path, was in diesem Artikel erwähnt wird, scheint mir ein sehr guter Ansatz zu sein. Das macht zwar die Insert/Update/Delete Operationen aufwändiger, da dies in unserem Fall aber nicht so häufig vorkommt (im Gegensatz zu dem Select), kann man das glaube ich in Kauf nehmen.

Danke dir!
*gruß*
Artorius
 
Zuletzt bearbeitet: