Hibernate ORM映射:基于主键的一对一

实现方式
Department表的主键作为外键关联到Manager表,让两个表中对应记录的主键一致
持久化类不变
这里写图片描述

创建映射文件
Department

    <class name ="Department" table="DEPARTMENTS">
        <id name ="deptId" type="java.lang.Integer">
            <column name ="DEPT_ID" />
            <!-- 设置当前表的主键列依赖另外一张表的主键实现 -->
            <generator class ="foreign">
                 <param name ="property">manager</ param>
            </generator >
        </id >
        <property name ="deptName" type="java.lang.String">
            <column name ="DEPT_NAME" />
        </property >
        <!-- 使用constrained属性给生成的主键列加上外键约束 -->
        <one-to-one name ="manager" class="Manager" constrained= "true" />
    </class >

Manager

    <class name ="Manager" table="MANAGERS">
        <id name ="mngId" type="java.lang.Integer">
            <column name ="MNG_ID" />
            <generator class ="native" />
        </id >
        <property name ="mngName" type="java.lang.String">
            <column name ="MNG_NAME" />
        </property >
        <one-to-one name ="department" class="Department" />
    </class >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值