单向一对多映射
- 在一方的实体类中定义多方的集合
- 在一方的hbm.xml配置文件中进行配置:
<set name="多方在一方中的实例化对象名" table="多方的表名">
<!-- 指定关联的外键列 -->
<key column="关联的外键列"></key>
<one-to-many class="entity.多方的类名"/>
</set>
set标签的常用属性:
单向多对一映射
- 在多方的实体中添加one方的引用
- 在多方的.hbm.xml文件中使用<many-to-one>配置
双向多对一/一对多映射
- 双方的hbm.xml文件都需要配置
inverse属性
- <set>节点的inverse属性指定关联关系的控制方向,默认由one房来维护
- 关联关系中,inverse=”false”则为主动方,由主动方负责维护关联关系
- 在一对多关联中,只能设置one方的inverse为true,这将有助于性能的改善
cascade(级联)属性
- 当设置了cascade属性不为none时,Hibernate会自动持久化所关联的对象,(默认值为none)
- cascade属性的设置会带来性能上的变动,需谨慎设置