Hibernate中的映射分类:4类:
关系映射
1对1 (双向)
外键关联:
<!-- 一对一外键关联映射(持有外键一方) -->
<!--
<class name="hibernate.pojo.Computer" table="t_computer">
<id name="id" column="id" type="integer">
<generator class="identity" />
</id>
<property name="name" column="name" type="string" />
<many-to-one name="student" class="hibernate.pojo.Student"
column="s_id" unique="true" cascade="all" />
</class>
-->
<!-- 一对一外键关联映射(持有主键方) -->
<!--
<class name="hibernate.pojo.Student" table="t_student">
<id name="id" column="id" type="integer">
<generator class="identity"/>
</id>
<property name="name" column="name" type="string" />
<one-to-one name="computer" class="hibernate.pojo.Computer" property-ref="student" cascade="delete" />
</class>
-->
主键关联:
<!-- 一对一主键关联映射(引用外键作为主键一方) -->
<class name="hibernate.pojo.Computer" table="t_computer">
<id name="id" column="id" type="integer">
<generator class="foreign">
<param name="property">student</param>
</generator>
</id>
<property name="name" column="name" type="string" />
<!-- cascade取值{none all save-update delete} -->
<one-to-one name="student" class="hibernate.pojo.Student" constrained="true" cascade="all"/>
</class>
<class name="hibernate.pojo.Student" table="t_student">
<id name="id" column="id" type="integer">
<generator class="identity"/>
</id>
<property name="name" column="name" type="string" />
<one-to-one name="computer" class="hibernate.pojo.Computer" cascade="all"/>
</class>
1对多(