Mybatis中的多表查询

多表查询的结构分为:

一对一

一对多(多对一)

多对多

根据不同情况下使用不同的处理方式

一对一

一对一方式一般都是,一个身份证对应一个人,一个商品订单对应一个消费者……

以商品为例子来经行说明

创建一个用户表和商品表

用户表

Mybatis中的多表查询_第1张图片

商品表

Mybatis中的多表查询_第2张图片

创建实体类

一对一的方式是在属性中添加一个类

Mybatis中的多表查询_第3张图片

配置xml文件

通过订单进行查询

使用的是resultMap所有需要我们手动配置映射

Mybatis中的多表查询_第4张图片

测试

Mybatis中的多表查询_第5张图片

一对多

一对多一般是,一个用户对应多个订单信息

创建一个用户表和商品表

用户表

Mybatis中的多表查询_第6张图片

商品表

Mybatis中的多表查询_第7张图片

创建实体类

一对一的方式是在属性中添加一个集合

Mybatis中的多表查询_第8张图片

配置xml文件

通过订单进行查询

使用的是resultMap所有需要我们手动配置映射

Mybatis中的多表查询_第9张图片

Mybatis中的多表查询_第10张图片

测试

Mybatis中的多表查询_第11张图片

多对多

多对多的情况就比较麻烦了

一个用户不仅需要查看商品订单,商品信息,还需要了解商品本身

所有就需要四个表

创建表

用户表

Mybatis中的多表查询_第12张图片

订单表

Mybatis中的多表查询_第13张图片

订单信息表

商品表

Mybatis中的多表查询_第14张图片

创建实体类

用户类

Mybatis中的多表查询_第15张图片

订单类

订单要知道用户信息和商品信息所有就需要添加俩个字段,一个用户类,一个订单信息类

Mybatis中的多表查询_第16张图片

订单信息类

订单信息肯定需要知道商品的类别所有需要一个商品类

Mybatis中的多表查询_第17张图片

商品类

Mybatis中的多表查询_第18张图片

配置xml文件

通过订单进行查询

使用的是resultMap所有需要我们手动配置映射

Mybatis中的多表查询_第19张图片

Mybatis中的多表查询_第20张图片

测试

Mybatis中的多表查询_第21张图片

你可能感兴趣的:(mybatis)