[Hibernate] Tabelleneinträge in eine Collection speichern

RavenKN

Mitglied
Hallo zusammen,

ich bin relativ unerfahren mit Hibernate und habe eine (möglicherweise Anfänger-) Frage:

Ich habe folgende Tabellen:

SKILLDATA:
ID - Integer - PK
LVL - Integer
DESC - String

ITEM:
ID - Integer - PK
...
SKILLID - Integer - FOREIGN KEY to SKILLDATA.ID

Ich habe der Datei ItemData.hmb.xml ein one to many Eintrag hinzugefügt und eine neue Klasse SkillData angelegt ... funktioniert alles einwandfrei. D.h. ich habe die entsprechenden Skilldaten für jedes Item als ein SkillData Objekt in der Klasse ItemData vorhanden.

Code:
ItemData.hmb.xml:

...

<class name="packageOne.ItemData" table="ITEM">
<many-to-one class="packageOne.ItemSkillData" column="SKILLID" name="itemSkillData"/>
...
</class>

...

<class name="packageOne.ItemSkillData" table="SKILLDATA">
  <id column="ID" name="skillId" type="java.lang.Long" unsaved-value="0">
   <generator class="native">
    <param name="sequence">ITEMSKILLID_SEQ</param>
   </generator>
  </id>
  <property column="LVL" generated="never" lazy="false" name="level" type="integer"/>
  <property column="DESC" generated="never" lazy="false" name="description" type="text"/>
</class>

...

Nun will ich allerdings ein Set/Array/List in der ItemData Klasse haben, welches ALLE Einträge (also Zeilen) von der Tabelle SKILLDATA als SkillData Objekt speichert. ( Collection<SkillData> allSkillDataEntries; ) Es muss nicht ganz genau diese Lösung sein aber ich stelle mir etwas in dieser Art vor.

Wie kann ich das realisieren? Was muss ich in der ItemData.hmb.xml und der ItemData.java verändern?

Vielen lieben Dank im Voraus