Hibernate的学习(二)

---恢复内容开始---

一、多表的建表原则

1、一对多的关系:例如 一个客户有多个联系人;

  表与表一对多的关系:在一对多时,多的表中添加一个外键,用来和一的表的主键。产生联系。

Hibernate的学习(二)

2、多对多的关系:例如 :一个用户可以有多个角色,一个角色可以包含多个用户;

 多对对建表原则:创建第三张表(中间表),在中间表中至少两个字段,这两个字段分别指向多对多两个表的主键。(中间表和这两张表都是一对多关系)

Hibernate的学习(二)

3、一对一的关系:例如 一个人只能有一个身份证,一个身份证只能有一个人

  建表:假设是一对多,在多的一方创建外键,指向一的主键,将外键设置为unique

二、配置映射文件

1.一对多(例如:Customer 和 LinkMan : 客户和联系人)

(1)在持久化类中,一的一方(LinkMan)创建多的一方(Customer)创建主键的方式:创建一个该类的对象

Hibernate的学习(二)

   在LinkMan.hbm.xml中添加外键设置

   Hibernate的学习(二)

    Hibernate的学习(二)

(2)在持久化类中,多的一方(Customer)创建一的一方(LinkMan)创建主键的方式:创建一个Set集合

Hibernate的学习(二)

  在Customer.hbm.xml中添加设置()

Hibernate的学习(二)

Hibernate的学习(二)

(3)设置级联更新

Hibernate的学习(二)

Hibernate的学习(二)

(4)设置级联删除  cascade="delete"

(5) 设置外键维护权:inverse = “false”:表示有外键维护权

二、对表对多表

1.在持久化类中分别设置Set<Class?> 对象;

2.配置映射文件

 name : 在持久化类中的set集合的对象名称;

 table : 是第三方表的表名;

 inverse : 被动方设置为没有外键维护权;

  key column = " 在第三方表中本表的主键名";

Hibernate的学习(二)

3.多对多的其他操作

Hibernate的学习(二)

Hibernate的学习(二)


---恢复内容结束---

上一篇:py下载网络图片


下一篇:开源框架.netCore DncZeus学习(三)增加一个菜单