hibernate一对多,多对一,多对多关系第一种关联关系:一对多(多对一)"一对多"是最普遍的映射关系,简单来讲就如消费者与订单的关系。一对多:从消费者角的度来说一个消费者可以有多个订单,即为一对多。多对一:从订单的角度来说多个订单可以对应一个消费者,即为多对一。一对多关系在hbm文件中的配置信息:消费者(一方):
订单(多方):
"一对多"关联关系,Customer方对应多个Order方,所以Customer包含一个集合用于存储多个Order,Order包含一个Customer用于储存关联自己的Customer。一对多关联关系有一种特例:自身一对多关联。例如:自身一对多关联自身的hbm文件设置:
外键存放父亲的主键。第二种关联关系:多对多多对多关系也很常见,例如学生与选修课之间的关系,一个学生可以选择多门选修课而每个选修课又可以被多名学生选择。数据库中的多对多关联关系一般需采用中间表的方式处理,将多对多转化为两个一对多。数据表间多对多关系如下图:多对多关系在hbm文件中的配置信息:学生: