使用JDBC/MyBatis流式查询,解决大数据量查询程序OOM问题
文章目录
- 背景
- 优化方案
-
- 方案 1:JDBC 流式查询
-
- 关键参数解读
- 实战案例
- 方案 2:MyBatis 流式查询
-
- 流式查询简介
- 实战案例
- 注意事项
- 参考
⭐ 背景:大数据量场景下,使用 JDBC 查询 / MyBatis 查询出现 OOM。
🚀 目标:掌握 JDBC 流式查询和 MyBatis 流式查询,解决大数据量拉取到内存 OOM 问题。
背景
使用 JDBC 查询 300 多万条待处理数据, JVM 堆大小为 128MB。直接查的话,则堆会 OOM。
/**
* JDBC 大数据量查询,约350万数据
* JVM 内存配置:-Xmx128m -Xms128m
*/
@Test
public void jdbcLargeQuery() throws SQLException