Hibernate 基于外键的双向一对一关联映射

  之前简单介绍了基于外键的单项一对一的关联映射关系,本文简单介绍基于外键的双向一对一的关联映射。

1.设计表结构

  表结构对于双向一对一来说没有多少改变,只是双向都可以获取到对方。

Hibernate 基于外键的双向一对一关联映射

2.创建Person对象

 Hibernate 基于外键的双向一对一关联映射

3.创建IdCard对象

 Hibernate 基于外键的双向一对一关联映射

4.写hbm.xml文件

 Hibernate 基于外键的双向一对一关联映射

Hibernate 基于外键的双向一对一关联映射

5.生成数据库表

 Hibernate 基于外键的双向一对一关联映射

  生成sql语句

 Hibernate 基于外键的双向一对一关联映射

6.新增数据

   在新增数据时与单项一对一并没有什么改变。

 

Hibernate 基于外键的双向一对一关联映射

  生成sql语句

Hibernate 基于外键的双向一对一关联映射

 7.查询(通过Person查询IdCard)

Hibernate 基于外键的双向一对一关联映射

  在这里发现通过person查询IdCard需要使用3条sql语句,原因是在Person的配置中我们使用的是多对一的配置加入了唯一键的方式去保证一对一的关系。

Hibernate 基于外键的双向一对一关联映射

 8.查询(通过IdCard查询Person)

 Hibernate 基于外键的双向一对一关联映射

  使用IdCard查询Person时只需要1条sql语句,因为在IdCard的配置中使用了一对一的配置。

Hibernate 基于外键的双向一对一关联映射

注:本文是在学习期间根据网上视频写的学习笔记,如有侵权请联系删除!