【问题标题】:How to define primary and foreign key in single hibernate mapping(hbm) file?如何在单个休眠映射(hbm)文件中定义主键和外键?
【发布时间】:2016-12-19 06:41:58
【问题描述】:

我想在同一个休眠映射文件 (hbm) 文件中定义一个主键和一个外键。我正在使用休眠 3。

我不知道如何在生成的类中指定两个键。我表中的字段是ideidfname,其中id 保存主键,eid 保存外键,fname 保存字符串。

assignleave.hbm.xml

<hibernate-mapping>
    <class name="assignLeave" table="assignleave">
        <id name="id" column="id" type="integer">
            <generator class="assigned"></generator>
        </id>
        <id name="eid" column="eid" type="integer">
            <generator class="foreign"></generator>
        </id>
       <property name="fname" column="fname" type="string"/>
    </class>
</hibernate-mapping>

【问题讨论】:

    标签: hibernate


    【解决方案1】:

    外键不是 id 列。

    您有两个映射选项:

    • 要么你有代表外表的实体,在这种情况下,大多数时候你想使用many-to-one映射
    • 或者这个外部表没有被hibernate映射(或者你不希望映射与hibernate的关联),在这种情况下你用一个简单的&lt;property&gt;标签映射它,assignLeave实体将有一个整数外键字段,例如 private Integer eid;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-17
      • 2011-07-26
      • 1970-01-01
      • 2019-01-09
      • 1970-01-01
      • 2018-06-12
      • 2013-03-27
      • 1970-01-01
      相关资源
      最近更新 更多