专栏名称: macrozheng
专注Java技术分享,解析优质开源项目。涵盖SpringBoot、SpringCloud、Docker、K8S等实用技术,作者Github开源项目mall(50K+Star)。
今天看啥  ›  专栏  ›  macrozheng

使用双异步后,从191s优化到2s!

macrozheng  · 公众号  ·  · 2024-07-02 10:32
    

文章预览

mall学习教程官网: macrozheng.com 在开发中,我们经常会遇到这样的需求,将Excel的数据导入数据库中。 一般我会这样做: 通过POI读取需要导入的Excel; 以文件名为表名、列头为列名、并将数据拼接成sql; 通过JDBC或mybatis插入数据库; 操作起来,如果文件比较多,数据量都很大的时候,会非常慢。 访问之后,感觉没什么反应,实际上已经在读取 + 入库了,只是比较慢而已。 读取一个10万行的Excel,居然用了191s,我还以为它卡死了呢! private   void   readXls (String filePath, String filename)   throws  Exception  {      @SuppressWarnings ( "resource" )     XSSFWorkbook xssfWorkbook =  new  XSSFWorkbook( new  FileInputStream(filePath));      // 读取第一个工作表     XSSFSheet sheet = xssfWorkbook.getSheetAt( 0 );      // 总行数      int  maxRow = sheet.getLastRowNum();     StringBuilder inser ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览