09|第九课:一对一以及一对多关联查询详解

一、历史回顾

(一)、关联查询

1、大多框架都分别讲解

一对一

一对多

多对一

多对多

2、Mybatis只有两种:

一对一

一对多(多对一、多对多的本质就是一对多的变化)

二、一对一以及一对多关联查询详解

(一)、一对一

1、业务扩展类

业务关联

注:这里需要card表有主键,并且person表的cardId外键关联card表的主键id。

核心:用resultType执行的类的属性包含多表查询的所有字段。例:上图中person的所有字段 + card的所有字段。

用这个类来做resultType的结果集

xxxMapper.xml配置方式:

xxxMapper.xml配置

例:

实体类:

Person类
Card类
做resultType的结果集的类

xxxMapper.xml配置:

xxxMapper.xml配置

xxxMapper接口:

xxxMapper接口

测试类:

测试类

2、resultMap

(1)、这里不使用中间关联两个表的,各使用各的。通过属性成员来实现,例:这里把Card当做Person的一个成员,这样使两个类关联起来。

图示

(2)、xxxMapper.xml配置:

配置

例:

xxxMapper.xml配置:

配置

xxxMapper接口:

接口

实体类:

实体

测试类:

测试类

(二)、一对多关联查询

1、业务扩展

关联图示

2、关联实体类图示

图1

注:这里的Person类不变。

3、数据库设计

Person表
City表

xxxMapper.xml配置:

配置:

例:

数据库设计:

person表
citiy表

实体类关联:

person类
citiy类

xxxMapper.xml配置:

配置

xxxMapper接口:

接口

测试类:

你可能感兴趣的:(09|第九课:一对一以及一对多关联查询详解)