读书人

Java乔晓松-Hibernate联系关系映射

发布时间: 2013-01-08 14:02:13 作者: rapoo

Java乔晓松-Hibernate关联映射

l 关联映射

多对一(Employee - Department)

映射文件<many-to-one name=”depart” column=”depart_id”/>

ER图

Java乔晓松-Hibernate联系关系映射

一对多(Department-Employee)

<setname=”employees”>

<key column=”depart_id”/>

<one-to-many class=”Employee”/>

</set>

一对一(Person - IdCard)

1)基于主键的one-to-one(person的映射文件)

<idname=”id”>

<generator class=”foreign”><param name=”property”>idCard</param></generator>

<id>

<one-to-onename=”idCard” constrained=”true”/>

Java乔晓松-Hibernate联系关系映射


一对一(Person - IdCard)

2)基于外健的one-to-one,可以描述为多对一,加unique=“true”约束

<one-to-onename=”idCard” property-ref=“person”/>

property-ref用于指定关联类的一个属性,这个属性将会和本外键相对应

<many-to-onename=”person” column=”person_id” unique=”true” not-null=”true”/>

<!-唯一的多对一,其实就便成了一对一了-->

Java乔晓松-Hibernate联系关系映射


多对多(teacher - student)

在操作和性能方面都不太理想,所以多对多的映射使用较少,实际使用中最好转换成一对多的对象模型;Hibernate会为我们创建中间关联表,转换成两个一对多。

<setname="teacher" table="teacher_student">

<keycolumn="teacher_id"/>

<many-to-manyclass="Student" column="student_id"/>

</set>

Java乔晓松-Hibernate联系关系映射

读书人网 >Web前端

热点推荐