Hibernate单向“多对一”关联

1. 基于外键关联单向“多对一”关联是最常见的单向关联
其中指定many-to-one的unique="true",为单向“一对一”,不指定就是单向“多对一”

<class name="Person">
    <id name="id" column="personId"><generator class="native"/></id>
    <many-to-one name="address" column="addressId" class="Address" />
</class>

2. 基于连接表单向“多对一”关联,在关联关系可选的情况下也较常见
其中指定many-to-one的unique="true",为单向“一对一”,不指定就是单向“多对一”

<class name="Person">
    <id name="id" column="personId"><generator class="native"/></id>
    <join table="PersonAddress" optional="true">
        <key column="personId" unique="true"/>
        <many-to-one name="address" column="addressId" class="Address" not-null="true"/>
    </join>
</class>

无论使用哪种方式,关联是单向的,另外一端无需额外配置

<class name="Address">
    <id name="id" column="addressId"><generator class="native"/></id>
</class>

原文地址:https://www.cnblogs.com/zjm701/p/6839293.html