开多个线程进行sql查询,怎么所有的线程都查询完成

开多个线程进行sql查询,怎么所有的线程都查询完成,第1张

对于复杂的业务sql查询,可以考虑如下建议。

1.先通过sql查询出主表信息列表list.

2.for循环list,补充查询主表对应的子表信息。

3.在2的步骤中,可以使用多线程处理for查询。

SQL指结构化查询语言,SQL使我们有能力访问数据库,SQL是一种 ANSI 的标准计算机语言

多线程是很容易造成死锁,一般情况下死锁都是因为并发 *** 作引起的。我不懂JAVA,但死锁这个问题每种开发工具和数据库都会碰到.解决办法是:

1、程序方面优化算法(如有序资源分配法、银行算法等),在一个程序里,能不用多线程更新同一张数据库表

尽量不要用,如果要用,其避免死锁的算法就很复杂。

2、数据库方面设置等待超时时间

3、发生死锁后直接KILL掉数据库进程

连接数据库要连接池,就是connection对象要放在一个LinkedList里面,然后每个线程一个。这个这个List被封装在一个单例模式的对象里。线程要是共享connection,要是搞起并发来,一下子就挂了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6697383.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存