1.MyBatis的一对一关联映射
在对应的Mapper.xml文件里<resultMap>元素中,包含了一个<association>子元素,MyBatis就是通过该元素来处理一对一关联关系的。
<association>子元素的属性:
嵌套查询:通过表的Mapper.xml文件 完成表的映射
嵌套结果:
当我们只调用一张表的时候 可以采用延时加载开关
使用MyBatis的延迟加载在一定程度上可以降低运行消耗并提高查询效率。
MyBatis默认没有开启延迟加载,需要在核心配置文件中的<settings>元素内进行配置,具体配置方式如下:
2.MyBatis的一对多关联映射
<collection>子元素的属性大部分与<association>元素相同,但其还包含一个特殊属性--ofType 。
3.MyBatis的多对多关联映射
在数据库中,多对多的关联关系通常使用一个中间表来维护,中间表中的订单id作为外键参照订单表的id,商品id作为外键参照商品表的id。
多对多嵌套结果:(通过中间表查询,效率高)