繁体   English   中英

异构继承对象的休眠映射图

[英]Hibernate mapping maps of heterogeneous inherited objects

我有下一个数据库架构:

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的映射。 映射的任何帮助将不胜感激。

不要使用地图,而要使用列表。 如果要查找地图样式,请使用查询或从数据库获取列表后构建临时地图。 另外,@ annotations会让您的生活更轻松吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM