一.
导入生成
Excel
原始的做法:
将数据加载到内存中,导入
Excel,
此方法的弊端:
1.
大量数据加载到内存中
,
使机器变得缓慢
2.
大量数据在导入
Excel
时形成大量
cell
对象产生
OOM
在使用
TOMCAT
的情况下,
JVM
最高只能支持到
2G
内存,则会发生内存溢出的情况。此时的内存开销主要是两部分,一部分是大量数据加载到内存,另一部分是写入一个
EXCEL
时形成大量
cell
对象的开销。由于
JVM
的
GC
机制是不能强制回收的
.
采用的方案是:将大量要导出的数据放入临时表分批次形成多个
Excel
文件后合并.说明:
1.
大量要导出的数据放入临时表
大量数据有可能是在海量数据表里通过条件查询出来的,这样可以有效避免多次在海量
数据中查询,提高了查询效率
2.
分批次形成多个
Excel
比形成一个
Excel
的多个
sheet
好,因为多个
sheet
形式需要将整个
Excel
加载到内存中,那么
sheet
越多,
Excel
越大
.
改多个
SHEET
页为多个
EXCEL
。通过多次生成,可以在后面
EXCEL
生成所需要的内存不
足时,有效回收前面生成
EXCEL
时占用的内存。
3.
将多个
Excel
合并
参考
:http://www.iteye.com/topic/240053.
二.
Excel
导出入库
1.excel
文件上传至服务器
2.
采用
eventusermodel
方式读取
excel
数据
,
分块读取数据并批量入临时表
3.
利用存储过程或其他纯
sql
语句来验证临时表
(Temp1)
中的数据
4.
将验证失败数据放入存储至校验失败的临时表中
(Temp2)
5.
将临时表
(Temp1)
中的数据插入库表
在此感谢
JAVAEYE
上的提供参考资料的各位同行
分享到:
相关推荐
特别是在处理大量分散存储在不同来源(如 Excel 表格或关系型数据库)中的数据时,提供了一套完整的解决方案。此外,还能增强对大型数据集的理解能力和深度挖掘能力。 阅读建议:建议边学边练,多尝试书中提供的例子...
总结来说,基于Excel与XML交互的物流业数据处理方法是一种结合了两种技术优势的解决方案,它不仅提高了物流业务的效率,也保证了数据处理的灵活性和准确性。通过这种方式,物流企业在处理大量数据时能够减少手动输入...
在开发过程中,尤其是在使用VC++(Visual C++)进行编程时,我们经常遇到与Excel交互的需求,例如数据导入导出。然而,使用默认的方式读写Excel文件时,可能会遇到性能瓶颈,导致整个程序运行速度变慢。这在处理大量...
二是使用第三方库,如EPPlus,它提供了更高效且无需安装Excel的解决方案。 1. 使用Excel对象模型(COM互操作):这是早期常用的方法,通过创建Excel Application对象,打开工作簿,访问工作表和单元格来读写数据。...
Exlink宏则是一种基于MATLAB和Excel之间的动态链接库(DLL)的解决方案,它允许用户在MATLAB中直接执行Excel宏命令,从而实现更灵活的数据交互。 #### 三、函数方式详解 ##### 3.1 获取文件信息——xlsfinfo函数 **...
本篇将深入探讨如何实现选择性地导出表单上的特定数据到Excel的解决方案。 首先,我们需要理解表单的基本结构。表单(Form)是HTML中的一个重要元素,用于收集用户输入的信息。它由各种表单控件组成,如文本输入框...
然而,这种方式需要Excel安装在运行程序的机器上,且性能较低,不适合大量数据处理。下面是一个简单的示例,演示如何将DataTable写入Excel: ```csharp using Microsoft.Office.Interop.Excel; // 假设已有...
对于百万级的数据,SQL Server能提供稳定且高性能的解决方案。它可以快速执行复杂的查询,并通过索引优化进一步提升性能。 在Excel与SQL Server之间进行数据导入导出有多种方法: 1. **Excel数据连接**:利用Excel...
总的来说,这个C#源码提供了从Excel到数据库的数据导入解决方案,对于处理大量数据的场景,其效率远高于逐条插入的方式,具有很高的实用价值。开发者可以根据自己的需求调整和扩展这个源码,以满足特定的业务场景。
在VB(Visual Basic)编程环境中,常常需要处理数据导入导出的问题,特别是在处理大量数据时,Excel和Access数据库之间的交互显得尤为重要。标题提到的“vb批量将excel数据导入access以及批量将access数据库中的数据...
3. 使用NPOI库:NPOI是针对.NET平台的Java POI库的移植,支持.xls和.xlsx格式,适用于大量数据处理。 二、SQL数据的访问 1. ADO.NET:微软提供的标准数据库访问技术,包括SqlConnection、SqlCommand、...
在本项目中,ImportExcel.sln是解决方案文件,它包含了整个项目的配置和引用。而ImportExcel可能是项目主程序的可执行文件,它提供了一个图形用户界面(GUI),用户可以通过这个界面选择Excel文件,设置数据库连接...
《Excel与数据库数据交换类》是针对这个需求提供的一种编程解决方案,它允许开发者通过编写代码来便捷地实现Excel与数据库之间的数据导入导出。 首先,我们要理解这个类的基本工作原理。数据交换通常涉及到读取...
总之,这个VB软件提供了串口数据采集、存储和可视化的一站式解决方案,对于需要处理串口数据的用户来说,是一个非常实用的工具。其核心技术包括串口通信、数据库操作和图形化显示,这些是IT行业中常见的技能点,也是...
当我们需要从数据库中导出大量数据并以用户友好的格式提供时,Excel是一种理想的选择。本文将深入探讨如何使用PHP将数据从MySQL数据库导出到Excel文件。 首先,要实现这个功能,你需要了解PHP的基本语法以及如何...
- **性能优化**:对于大量数据的处理,可以考虑分批次上传或者采用异步处理机制,避免长时间阻塞用户界面。 - **异常处理**:添加异常处理逻辑,确保程序在遇到问题时能够妥善处理并给出反馈。 综上所述,本方案...
这篇博文“处理大数据量excel”可能提供了针对这一问题的解决方案。博主分享了在处理大量数据时,如何利用编程工具和特定库来提升效率和性能。 首先,我们关注到标签中的“源码”和“工具”,这暗示了博主可能介绍...
另一种无依赖的解决方案是使用第三方库,如EPPlus,它提供了一个更轻量级的API来处理Excel文件(.xlsx格式)。 1. **使用Microsoft.Office.Interop.Excel** 要使用此方法,首先需要添加对`Microsoft.Office....
【描述】中提到的"使用labwindows开发的数据采集程序,完全自动存储到EXCEL文档",意味着开发人员利用LabWindows/CVI的强大功能,创建了一个自动化程度高的解决方案。LabWindows/CVI是美国国家仪器公司(NI)提供的...
7. Excel Services与Business Connectivity Services(BCS,之前称为Business Data Catalog,BDC)的集成,使得直接从SharePoint访问企业系统如ERP和CRM成为可能,进一步增强了BI解决方案的功能。 8. PowerPivot...