只要关系配置正确,一条sql就可以解决循环中查询数据库的问题

原创 2015年07月08日 08:53:05


如上配置,可以实现查询多个订单,并且查询出每个订单对应的商品信息,存放在对应订单的集合中,实体类中存在如下的属性


在实体对象中展现一对多的关系,mapper文件中通过collection标签配置一对多关系

假设执行sql的结果如下:


相同的订单出现可能不止一次,里面存在的商品也不一样,如何将同一订单的商品整合在一起?

其实我们不需要做任何的事情,看到上图中配置的ResultMap,因为PURCHASE_ID作为主键,数据库中的每条记录是一个对象,相同的订单编号会覆盖之前的订单,而商品信息则继续往集合中添加。这样最终就可以把一个订单中的商品信息全部放在一个集合中。

循环中读取数据库、嵌套循环引起的性能问题

背景说明 K/3 Cloud的代码开发规范,严格禁止在循环中到数据库读取数据,这会引发严重的性能问题: 需在循环外,一次性取回需要的数据。 但对于提前取回的数据,如果没有预先处理,常常需...
  • fyq891014
  • fyq891014
  • 2016年04月27日 13:03
  • 3356

java 不让查询数据库sql一直在循环中执行的方法

java sql 循环查询 for(String id:list){ po = dao.select(id); dao.update(po); } 这样做的话会有性能问题,可是不...
  • evilcry2012
  • evilcry2012
  • 2016年08月26日 16:07
  • 2132

循环查询数据的性能问题及优化

本文过三个实例来阐述循环查询对性能的影响和优化的方法,涉及常用的三种数据存储:MySQL,MongoDB和Redis,更重要的是想借此传达一个观点:编程,应该设计先于写代码。...
  • zwgdft
  • zwgdft
  • 2016年11月13日 22:36
  • 3103

【转】使用TCP协议连续传输大量数据时,是否会丢包,应如何避免?

【转】使用TCP协议连续传输大量数据时,是否会丢包,应如何避免? Posted on 2008-06-11 15:24 路缘 阅读(3868) 评论(0) 编辑 收藏  http://...
  • jiftlixu
  • jiftlixu
  • 2012年03月01日 17:56
  • 2597

for循环中的闭包问题及解决方案

说到闭包,我们首先来看一个最最简单的例子,也是最最基础的例子:为多个相同的元素,绑定事件,在点击每一个元素时,提示被点击元素的排列位置。 栏目1 栏目2 ...
  • qq_34986769
  • qq_34986769
  • 2016年08月07日 19:51
  • 1448

不要循环查询数据库

在编码过程中要避免在循环中查询数据库,能一次查询的就不要多次查询。下面两个代码块是完全等效的。代码块一写起来简单,但却在循环中多次查询数据库,该代码执行时间为8毫秒。代码二写起来麻烦甚至还多了个双重循...
  • keketrtr
  • keketrtr
  • 2015年07月20日 18:18
  • 3303

如何通过for循环添加对象到集合(防止数据覆盖)

import java.util.ArrayList; import java.util.List; public class Test { static class Student {...
  • C5L2T0Z
  • C5L2T0Z
  • 2017年12月04日 14:53
  • 169

如果让你设计一个网络爬虫,你怎么避免陷入无限循环?

话说爬虫为什么会陷入循环呢?答案很简单,当我们重新去解析一个已经解析过的网页时,就会陷入无限循环。这意味着我们会重新访问那个网页的所有链接,然后不久后又会访问到这个网页。最简单的例子就是,网页A包含了...
  • universe_ant
  • universe_ant
  • 2017年07月07日 21:59
  • 1029

JS之经典for循环闭包问题解决方法

JS之经典for循环闭包问题解决方法 像这样一个代码片段,初学者会理所当然地认为依次点击Li会弹出相应的0、1、2、3、4、5,但实际结果却是这样的 我们无论点哪个按钮,最后弹出来的都是6。...
  • YuLi_Zoe
  • YuLi_Zoe
  • 2015年01月30日 13:09
  • 6934

for循环中的异步问题

function f1(){ for(var i = 0; i < 10; i++) { setTimeout(function() { ...
  • qq_25252769
  • qq_25252769
  • 2017年07月23日 14:43
  • 133
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:只要关系配置正确,一条sql就可以解决循环中查询数据库的问题
举报原因:
原因补充:

(最多只允许输入30个字)