String sql =
"select * from Test"
; // SQL执行大概花费了30秒
Connection conn = DriverManage.getConnection(url,user,password);
PreparedStatement stmt = conn.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
int
i=
0
;
while
(rs.next()) {
i++;// 执行到大概每 5-6万笔的时候就卡住了,然后过了1分钟又继续往下执行
System.out.println(i
);
}
数据量太大了,要分页处理;最好放到集合里面再做处理。
建议你改成游标的形式,可能是因为数据量比较大的原因导致的。几万条数据都读到内存中的话,可能是 jvm GC 导致暂停的。可能原因比较多,得看你业务代码怎么写的。
SQL很复杂,关联了多张表
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632