JPA: Wie mappe ich Nested Sets?

Status
Nicht offen für weitere Antworten.

Tobias

Top Contributor
Hi,

ich habe folgende Klassenstruktur:

Code:
+-------------------+
| DirectoryTreeItem |
+-------------------+
|    ^
|    |
^    +----------------+
v    |                |
+-----------+      +------+
| Directory |      | File |
+-----------+      +------+

also ein einfaches Composite-Pattern. Dazu gehört folgendes Tabellenmodell:

Code:
lft: unsigned int;
rgt: unsigned int;
name: varchar(50) primary key;
textdata: CLOB;
binarydata: BLOB;
discriminator: String

Hier wird die Verzeichnisstruktur als Nested Sets abgebildet. Was mir fehlt ist das JPA-Mapping zwischen der Klassenstruktur und der Tabelle. Das Abbilden des ganzen als SINGLE_TABLE-Inheritance ist ja kein Problem, die Probleme beginnen, wenn ich der Klasse Directory beibringen soll, wie sie ihre Kinder aus der Datenbank lesen kann.

Zu Nested Sets kann man hier noch ein bißchen was nachlesen: http://www.klempert.de/nested_sets/

Ich bin für jede Hilfe dankbar!
Tobias
 
G

Guest

Gast
Du wirst die Kind-Knoten nachträglich lesen müsse, da du keine Fremdschlüssel bzw. keine Assoziation zwischen Directory und File
definiert hast. Anders ausgedrückt, du kannst JPA nicht dazu bewegen Nested Sets direkt abzubilden. Solche Optimierungen gehen
etwas über die Möglichkeiten des OR-Mappin hinaus.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben