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

问题描述

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

解决方案

转为CSV上传,可以用SuperCSV读或者用POI分段读取EXCEL
解决方案二:
1 增大jvm 2 任何读取大的数据都不应该一次性读取,而是需要分批次处理,也就是一次处理几千条数据条数。
解决方案三:
如LS所说,转为CSV是最好的。因为是要往DB存的,可见只是为了保存数据,不需要格式和报表,没必要使用Excel,通过Excel来处理太得不偿失了。通过CSV来处理,手动切分都很容易,使用NIO,反正不要一次性读入内存。
解决方案四:
excel不能经过jvm,经过jvm的话依然会内存溢出,按照你的思路,你尝试下这个方法。http://www.cnblogs.com/oneword/archive/2009/12/14/1623586.html,insert into table select ...

时间: 2024-10-24 09:22:34

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

java的excel表格上传实现导入mysql数据库功能

问题描述 java的excel表格上传实现导入mysql数据库功能 在网页上有个按钮要实现点击按钮选择文件实现将文件导入mysql数据库的功能,上百度不知道应该用什么关键词搜索,求技术大牛给个网址 解决方案 参考一下 import java.io.FileInputStream;<br> import java.io.IOException;<br> import java.sql.Connection;<br> import java.sql.DriverManage

导入-在poi读取excel的合并数据时,怎么判断合并了多少行以及怎么取值

问题描述 在poi读取excel的合并数据时,怎么判断合并了多少行以及怎么取值 类似于上面的导入格式怎么读数据 解决方案 参考这个EXCEL中如何用VBA判断某一地址单元格是否为合并单元格然后把vba转成你自己的语言http://wenku.baidu.com/link?url=nsc0K4oKljjsvfVayJIXT9q2oNcWMwgjRghQdCqOPPJaH_Zm0UNgwqRKRdmC5PypqxvKwIDBgRV7i8W9sxiR0_KhBR78e6b6vTenaoVEE-7

javascript-JS关于生成有20W条数据的静态树

问题描述 JS关于生成有20W条数据的静态树 这里有20W条数据,每个数据有ID,PID,NAME属性.现在要把这20W条数据从后台一次性读取,在JAVA中利用freemarker.jar参照模板问卷生成html.现在利用Jquery-zTree做出的静态页面打开需要14s左右,用梅花树倒是非常快,2s搞定.但请问还有没有更快的解决方式? 解决方案 用hightChart绑定,或者用 D3.js都可以.速度还是挺快的.

C#如何读取Excel中的数据

#region 读取Excel中的数据 02./// <summary> 03./// 读取Excel中的数据 04./// </summary> 05./// <param name="excelFile">Excel文件名及路径,EG:C:\Users\JK\Desktop\导入测试.xls</param> 06./// <returns>Excel中的数据</returns> 07.private DataT

asp.net读取excel中的数据并绑定在gridview

 这篇文章主要介绍了asp.net读取excel中的数据并绑定在gridview上的方法,需要的朋友可以参考下       前台label,DropDownList,gridview控件 aspx.cs核心代码: 代码如下: using System.Data.OleDb;//需要引入命名 public void Excel_Click(object sender, EventArgs e) { if (this.AttachmentFile.Value == "" &&

java读取excel表格内容

问题描述 java读取excel表格内容 java读取excel表格内容,中间有好多空格,空格下面还有字,但是我就想读到空格上面,下面的不想读了,该怎么办呢 解决方案 使用POI组建读excel数据 解决方案二: POI 读取行列都可以的 . 解决方案三: 使用POI组建读excel数据,然后进行判断,空格就结束 解决方案四: 读到固定的某一行某一列就行了,,, 解决方案五: POI读取excel 时,是循环行读取的,在读取行数据时判断当前行数据是否为空,如果为空就跳出循环

C# 读取Excel中的数据

#region 读取Excel中的数据 /// <summary> /// 读取Excel中的数据 /// </summary> /// <param name="excelFile">Excel文件名及路径,EG:C:\Users\JK\Desktop\导入测试.xls</param> /// <returns>Excel中的数据</returns> private DataTable GetTable(stri

javascript-怎么把excel文件从Web端导入到数据库,Java ee平台

问题描述 怎么把excel文件从Web端导入到数据库,Java ee平台 一份学生成绩单,从Web上导入到数据库,Java ee平台.,,,,,,,,,,,, 解决方案 上传到服务器,通过poi工具包解析后,存库 解决方案二: 将excel文件导入到数据库中 解决方案三: 你是要存数据还是文件?要是数据要把excel文件内容获取到然后存入数据库,如果是文件,要把文件上传到服务器,然后再再数据库存路径和相关信息. 解决方案四: 首先web端页面定义一个 input type="file"

excel导出-java导出excel时的数据换行问题

问题描述 java导出excel时的数据换行问题 java中做页面中表单的excel导出功能(表单数据通过sql查询),表单的其中一列是通过字符串的拼接形成的,为了页面的美观,在sql中拼接该字符串时,根据分隔号拼接标签,使其可以在页面上显示出多条记录分行的效果.但是由于excel导出用的sql和页面展示用的sql是同一句,因此在导出的excel中该列的显示会出现xxxxxxx的情况. 目前是处理方式是通过同样的方法拼接一个字段,但是不拼接,在页面显示中使用拼接了的,在导出时取的数据来自于不拼接

读取excel去除重复数据,然后在存入数据库

问题描述 读取excel去除重复数据,数据量比较大,考虑执行效率问题,求大神给出最好解决方案 解决方案 解决方案二:如果你没有技术讨论,那么请把帖子发到"项目外包"论坛.免费"求"人,是一点诚意也没有的.解决方案三:你好!你可以在先Excel里面去除重复,再数据导入!这种方法不行吗?解决方案四:在查询Excel的时候直接去掉不行吗?和在数据库中一样用distinct解决方案五:可用第三方dll读取excel数据后进行去重然后存放到数据库中.aspose.cells读