Ich denke, so etwas müsste sich mit einer Vererbungsstrategie abbilden lassen. Eine Möglichkeit wäre die in Kapitel 9.1.5 der Referenz-Doku beschriebene Variante "table per concrete class".
Würde in der XML-Mapping-Datei dann etwa so aussehen:
Code:
<class name="Aufenthaltsort">
...
<union-subclass name="Haus" table="HAUS">
...
</union-subclass>
<union-subclass name="Auto" table="AUTO">
...
</union-subclass>
<union-subclass name="Schule" table="SCHULE">
...
</union-subclass>
</class>
Wenn es Dir darum gehen sollte, die Property bezeichnung in allen drei Implementierungsklassen zu verwenden, würde ich Dir empfehlen, aus Aufenthaltsort eine abstrakte Klasse zu machen:
Code:
public abstract class Aufenthaltsort {
private String bezeichnung;
public String getBezeichnung() {
return bezeichnung;
}
...
}