MyBatis如何处理表关联?

1.关系型数据库?

数据库中的表对象之间是有关系的。

一对一,一对多,多对多。

ORM映射。数据库表映射到实体对象。

实体与实体之间是有关系的。

一对多的关系。

比如商品分类表与商品表之间的关系,就是一对多的关系。

入库主表与入库子表之间的关系,也是一对多的关系。

出库主表与出库子表之间的关系,也是一对多的关系。

2.如果我们获取的时候,只想获取单表的数据:

尽可能不用关联查询的时候就不用。

延迟加载,也叫懒加载,比如我们取商品信息表的数据,只会从商品信息表里去获取,如果发现我们除了取商品信息表的数据的时候,还会取商品分类表的数据,那么这个时候才会去查询商品分类表的数据。

实现延迟加载的步骤:

首先需要配置mybatis中使用延迟加载:

需要配置jar包,cglib的jar包。

3.实体与实体之间的关系设定。

设计思路,在产品实体类中会有一个产品分类的实体对象。

在分类的实体对象中会有一个产品表的集合对象数据。

比如产品表,那么会有一个产品分类的实体对象:

映射的配置(配置在实体XML里面):

  1. 对于产品分类表,那么会对应到多个产品,实际就是在产品分类表里会有产品的集合:

  1. 那么对应的映射结果集(配置在对应产品类型的xml里面):

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值