TreasureNow
2013-08-09 21:12 阅读 491
已采纳

java 读取 Excel (20W条数据)并导入到 数据库解决方案

现在做个项目,要把 Excel 通过 java web 导入到数据库,在 action 里 java 内存泄漏 (20 W 条数据)。于是想到把文件上传到服务器,然后 java 直接连接 Excel 本身数据库读取数据 insert 到 SQLSERVER 数据库 不知可行不,有没有更好的建议

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    xblueskyleng xblueskyleng 2013-08-09 22:29

    转为CSV上传,可以用SuperCSV读
    或者用POI分段读取EXCEL

    点赞 6 评论 复制链接分享
  • zyn010101 zyn010101 2013-08-09 22:46

    excel不能经过jvm,经过jvm的话依然会内存溢出,按照你的思路,你尝试下这个方法。[url]http://www.cnblogs.com/oneword/archive/2009/12/14/1623586.html[/url],insert into table select ...

    点赞 评论 复制链接分享
  • yunzhu666 yunzhu666 2013-08-10 09:08

    如LS所说,转为CSV是最好的。

    因为是要往DB存的,可见只是为了保存数据,不需要格式和报表,没必要使用Excel,通过Excel来处理太得不偿失了。

    通过CSV来处理,手动切分都很容易,使用NIO,反正不要一次性读入内存。

    点赞 评论 复制链接分享
  • jinandmei jinbingchuan 2013-08-10 09:41

    1 增大jvm
    2 任何读取大的数据都不应该一次性读取,而是需要分批次处理,也就是一次处理几千条数据条数。

    点赞 评论 复制链接分享

相关推荐