现在是需要在循环去查询数据库,然后进行数据汇总。大家有例子,建议参考意义吗

回答

其实如果你是因为每个查询任务都比较慢,所以想采用这种方式,不如去优化一下sql。或者你可以用下面的这种线程池的方式来处理,不过代码的复杂度会大大提高的。

Futrue返回的包装的数据类型对应你sql返回的类型

或者你可以使用fork/join来处理

public class CallableAndFuture {

public static void main(String[] args) {

ExecutorService threadPool = Executors.newSingleThreadExecutor();

List> futures = new ArrayList<>();

for (int i = 10; i < 15; i++) {

futures.add(threadPool.submit(new Task(i)));

}

try {

Thread.sleep(1000);// 可能做一些事情

int allSum = 0;

for (Future f : futures) {

int fsum = f.get();

System.out.println("sum:" + fsum);

allSum += fsum;

}

System.out.println("allSum:" + allSum);

} catch (InterruptedException e) {

e.printStackTrace();

} catch (ExecutionException e) {

e.printStackTrace();

}

threadPool.shutdown();

}

}

class Task implements Callable {

private int i;

public Task(int i) {

this.i = i;

}

@Override

public Integer call() throws Exception {

// 替换成db的查询

int sum = 0;

for (int j = 0; j <= i; j++) {

sum += j;

}

return sum;

}

}

mysql循环查到没数据库_【mysql】在for循环里使用多线程查询数据库相关推荐

  1. 查看mysql的多线程_在for循环里使用多线程查询数据库

    其实如果你是因为每个查询任务都比较慢,所以想采用这种方式,不如去优化一下sql.或者你可以用下面的这种线程池的方式来处理,不过代码的复杂度会大大提高的. Futrue返回的包装的数据类型对应你sql返 ...

  2. 帝国cms与mysql数据库_帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

    例1:连接MYSQL数据库例子.(a.php) require('e/class/connect.php'); //引入数据库配置文件和公共函数文件 require('e/class/db_sql.p ...

  3. 易语言 mysql支持库支持多线程_易语言多线程查询数据库 易语言多线程并发

    为什么易语言两个线程同时对一个MYSQL数据? 数据库有自己的连接锁机制,如果是针对同一台机器使用同一个接口进行插入的话多线程和单线程是一样的.除非你有好几台数据库服务器,这样再使用多线程来进行上面的 ...

  4. mysql语句删除excel文件夹_使用Excel怎么生成批量删除、新增数据库语句

    1.打开Excel,新建一个空白的页签,在A1输入写好的数据库删除语句,DROP DATABASE `db_game_1`; . 2.在A2输入如下公式:="DROP DATABASE `d ...

  5. 装mysql最后一步没响应_解决MySQL安装到最后一步未响应的三种方法

    这种情况一般是你以前安装过MySQL数据库服务项被占用了. 解决方法: 方法一:安装MySQL的时候在这一步时它默认的服务名是"MySQL" 只需要把这个名字改了就可以了.可以把默 ...

  6. python如何使用本地数据库_使用Python在虚拟机上怎么连接本地数据库

    首先保证你的虚拟机和本机网络是处于同一网段的(一个局域网内), 然后明确数据库所占用的端口, 数据库账户密码就可以链接上了! python中把一个数据库对应的表封装成类就很好操作了! mysql的话: ...

  7. 先学python还是先学数据库_跟着销售学python8-微信平台初次见识数据库(6)

    本来是计划跟着learn python the hard way ,继续下去, 不过中途补充一下,网页的基础知识吧,也不耽搁了. [摘录]:用来记下,之前不理解的 地方? 1.web.py  引入数据 ...

  8. nosql非关系型数据库_从Datomic出发,革命性的非NoSQL数据库

    nosql非关系型数据库 我终于设法了解了当今最不寻常的数据库之一,Datomic,并希望与您分享. 感谢Stuart Halloway和他的工作室! 为什么?!? 我们很快就会看到,Datomic与 ...

  9. sql重命名数据库_为什么要为SQL单元测试巧妙地命名数据库对象

    sql重命名数据库 This article is focussed on clever database object naming from both development and SQL un ...

最新文章

  1. 在CentOS 6.5 x86_64上安装libunwind的问题
  2. s时钟画布 android,Android UI编程进阶——使用SurfaceViewt和Canvas实现动态时钟
  3. iOS中的UIView
  4. Vista中使用率最高的11条命令
  5. python的scrapy框架的安装_Python爬虫基础(四)--Scrapy框架的安装及介绍
  6. dhl:使用return RedirectToAction()和 return view()
  7. 如何在JavaScript中使用when()有条件地更改值
  8. 深入理解 PHP7 unset 真的会释放内存吗?
  9. 财务一体化项目,进度与计划31
  10. JS无刷新修改URL类似博客园翻页效果
  11. php 会话 写入浏览器,创建PHP会话变量会挂起我的浏览器
  12. FFplay使用指南
  13. Python中文字符串,变成英文字符串
  14. php朋友圈九宫格怎么做,微信朋友圈九宫格视频怎么做 图片背景加九宫格视频随机播放的效果制作|微信九宫格视频...
  15. 如何压缩视频而不降低画质?
  16. 机器学习-了解逻辑回归的逻辑过程
  17. 图集谷-写真集-爬虫-2.0
  18. 评央企员工持股时隔11年将重启 个人比例不超5%
  19. jdk1.8官方文档下载mac
  20. 数据库操作语句大全(sql)

热门文章

  1. Vue监听滚动条事件 点击回到顶部
  2. vue移动端弹框组件
  3. vue2.0 prop的使用
  4. java中HashMap遍历详解
  5. Some Essential JavaScript Questions And Answers(6)
  6. JNI传递字符串数组J-StringArray
  7. VS2012 编译 boost1.53/ boost1.49
  8. 【自用】 VS2017 部分快捷键
  9. 也可以看看GCD(杭州电2504)(gcd)
  10. hdu3033---加限制条件的0-1背包