MyBatis大数据量流式数据查询、数据导出的方法
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,这篇文章主要介绍"MyBatis大数据量流式数据查询、数据导出的方法",在日常操作中,相信很多人在MyBatis大数据量流式数据查询、数据导出的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2025年02月03日MyBatis大数据量流式数据查询、数据导出的方法
这篇文章主要介绍"MyBatis大数据量流式数据查询、数据导出的方法",在日常操作中,相信很多人在MyBatis大数据量流式数据查询、数据导出的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"MyBatis大数据量流式数据查询、数据导出的方法"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
如果需要导出大数据量到文件中,一次性查询百万或者千万以上数据到内存,可能会导致JVM直接内存溢出崩溃。即使不崩溃,也会导致JVM频繁GC,验证影响速度与稳定性!
因此采用流式导出,一边查询一边向文件写入。
以导出excel为例:
数据读取:
public File exportExcel(Integer userId) { excel=openExcel(); locationViewDao.getListForExcel(userId, new ResultHandler() { @Override public void handleResult(ResultContext extends ListForExcelMap> resultContext) { ListForExcelMap row = resultContext.getResultObject(); excel.append(row); } }); return excel.build();}
DAO定义:
void getListForExcel(@Param("userId")Integer userId, ResultHandlerhandler);
注意: 返回一定得是void,并且参数里一定有ResultHandler,这样MyBatis才会认为是流式查询
Mapper定义:
参数必须设置为
resultSetType="FORWARD_ONLY"
参数必须设置为
fetchSize="-2147483648"
如果不想返回对象,可以将
resultMap="listForExcelMap"
改成resultType="java.util.Map"
返回Map
到此,关于"MyBatis大数据量流式数据查询、数据导出的方法"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
数据
查询
方法
数据查询
学习
参数
内存
文件
更多
帮助
实用
频繁
接下来
一次性
对象
文章
理论
知识
稳定性
篇文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何学好计算机和网络技术
人行网络安全和信息化工作总结
四川互联网软件开发费用是多少
大学数据库理论
用服务器抢是什么
数据库编码用什么
软件开发中poco含义
v9数据库更改密码
数据库管理员英文名
数据库数字用什么类型
泰拉瑞亚联机的服务器是什么
软件开发方面的英语单词
同步器需要同服务器吗
数据库跑批
服务器能识别ntfs启动盘吗
我的世界服务器打僵尸模式
数据库字段设置日期
中国高技术产业数据库
数据库安全管理原则有哪些
穿越火线进频道总是连接服务器
软件开发 时间 周期
如何删除表数据库
商业计划书 网络安全
贵阳网络技术培训班
建好的数据库找不到了
韶音科技软件开发待遇怎么样
网络安全态势感知平台是什么意思
linux服务器数据库备份
萤火虫 分布式存储服务器
网络安全中电科