码迷,mamicode.com
首页 > 移动开发 > 详细

Mapper.xml中对象的关联

时间:2017-11-09 00:17:42      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:2-2   需要   logs   image   XML   内联   n+1   直接   写法   

对象的关联,特别是manytoone的关联,有两种方式:发送一条额外sql去查询和内联的方式

发送一条额外sql:当我在使用到这个关联对象的时候,我发送一条额外的sql去把这个关联的对象查询出来,然后设置到对象里面,这样容易造成n+1的问题

内联方式:在这条sql直接把关联的对象的表连接进来,把需要查询的信息全部查出来,然后直接在resultMap中拼装出关联的对象,这样就可以避免n+1的问题,但是会造成连接的性能损耗

选用原则 :

如果关联的对象要在列表中显示,那么直接使用内联的方式,会造成表关联的性能损耗

如果要在查看这个对象时才显示,则选择使用发送一条额外的sql进行查询的方式,但是会造成n+1的问题

技术分享

选用哪种方式?

 选用发送一条额外sql

因为在列表中不用显示借款人的信息,而是当我们要去查看这个借款人的信息时,当我们要去查看他的借款明细的时候,才会去点开看他的信息,这个属性要查看某个对象时,才会显示。

 

mapper.xml中关联的写法

技术分享

技术分享

使用发送额外的sql查询,则下面这条sql语句不用变

 

乐观锁的问题

技术分享

 

 技术分享

 

n+1问题,网上查了下资源

技术分享

 

Mapper.xml中对象的关联

标签:2-2   需要   logs   image   XML   内联   n+1   直接   写法   

原文地址:http://www.cnblogs.com/Girlir/p/7806834.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!