Карты отображения гибернации гетерогенных наследуемых объектов - PullRequest
1 голос
/ 24 апреля 2011

У меня есть следующая схема базы данных:

CREATE TABLE A (id INTEGER);
CREATE TABLE Single_Values (fk_a INTEGER, fk_b INTEGER, value VARCHAR(255));
CREATE TABLE List_Values (fk_a INTEGER, fk_b INTEGER, value VARCHAR(255));
CREATE TABLE B (id INTEGER, name VARCHAR(255));

И у меня есть следующая объектная модель (схема):

class B{
    Integer id;
    String name;
}

class SingleValue extends B{
    String value;
}

class ListValues extends B{
    List<String> values;
}

class A{
    Integer id;
    Map<Integer, SingleValue> singleMap;
    Map<Integer, ListValues> listMap;
}

Я сделал следующее отображение на карту отдельного значения:

<class name="B">
   <id name="id"/>
   <property name="name"/>
   <joined-subclass name="SingleValue">
       <key column="fk_b"/>
       <property name="value"/>
   </joined-subclass>
</class>
<class name="A">
    <id name="id"/>
    <map name="singleMap" table="Single_Values">
        <key column="fk_a"/>
        <map-key column="fk_b"/>
        <one-to-many class="B"/>
    </map>
</class>

И я застрял с отображением listMap.Любая помощь с картированием это будет оценено.

1 Ответ

1 голос
/ 02 мая 2011

Не используйте Карты, используйте Списки. Если вы хотите посмотреть стиль карты, используйте запрос или создайте временную карту после получения списка из базы данных. Кроме того, @annotations облегчит вашу жизнь?

...