CN103034647A - 一种基于多线程技术的excel数据导入 - Google Patents
一种基于多线程技术的excel数据导入 Download PDFInfo
- Publication number
- CN103034647A CN103034647A CN2011103002062A CN201110300206A CN103034647A CN 103034647 A CN103034647 A CN 103034647A CN 2011103002062 A CN2011103002062 A CN 2011103002062A CN 201110300206 A CN201110300206 A CN 201110300206A CN 103034647 A CN103034647 A CN 103034647A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- importing
- excel
- thread
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及种数据导入技术,尤其是一种基于多线程技术的EXCEL数据导入。本发明属于通信技术领域。本发明实现的基于多线程技术的EXCEL数据导入,其特征在于:通过创建模块为EXCEL数据导入创建UI界面,通过验证模块对EXCEL的数据类型进行验证并给出验证数据,通过转换模块对错误的数据类型进行转换并显示在UI界面上,通过创建线程模块按照导入数据的大小根据指定的算法创建线程个数,通过并行导入模块进行多线程同时进行导入并生成报告。本方法采用了多线程技术,其主要优势在于充分利用了CPU的空闲时间片,可以用尽可能少的时间来对用户的要求做出响应,使进程的整体运行效率得到提高,同时增强应用程序的灵活性。
Description
技术领域
本发明涉及一种数据导入技术,尤其是一种基于多线程技术的EXCEL数据导入。本发明属于通信技术领域。
背景技术
信息管理系统是当前信息管理的主要手段和工具,数据库技术是大多数信息管理系统中重要的组成部分。数据库技术的不断进步给各行业的信息管理工作带来了极大的方便,但在工作效率提高的同时,随着技术的发展,多种不同数据库之间的数据转换问题也越来越突出。很多单位在长时间的日常工作中积累了大量数据,并为存储和管理这些数据不断投资。然而由于实施数据管理系统的阶段性、技术性以及其他经济和人为因素的影响,以至即使在单独业务部门,采用的数据管理系统也大不相同,从简单的文件数据库到复杂的网络数据库,他们构成了该部门的异构数据源。如何高效的共享这些异构数据源的数据已经成为信息系统建设和集成所面临的一个重要问题。而EXECL数据导入技术提供了一种有效的解决方案。
数据的导入、导出是指在不同应用之间按普通格式读写数据,从而实现交换的过程。目前流行的主流数据库和数据库开发软件自带的数据转换工具依托强大的技术有事和良好的应用环境,在一定范围和应用条件下具有比较强大的功能。但是目前现在主流的数据库产品太多,不同的产品对其他产品的兼容性都不是很好。管理软件的复杂程度往往很难让普通用户可以自行进行数据导入。而且异构数据源的数据转换、数据导入的效率都不是十分理想,特别对大批量数据,往往对会服务器造成很大的压力。
现有的技术存在如下的弊端:数据导入的检验性差,往往对数据的类型、格式的验证都比较薄弱。大批量数据导入的速度慢,导致数据在传输过程中容易出错。数据转换的性能和出错率高。而且不同的数据源所需要的环境都不同,服务器的环境配置比较复杂。
本发明要解决的问题是提供一种多线程技术的EXCEL数据导入。本方法采用了多线程技术更好地利用系统资源。其主要优势在于充分利用了CPU的空闲时间片,可以用尽可能少的时间来对用户的要求做出响应,使得进程的整体运行效率得到较大提高,同时增强了应用程序的灵活性。更为重要的是,由于同一进程的所有线程是共享同一内存,所以不需要特殊的数据传送机制,不需要建立共享存储区或共享文件,从而使得不同任务之间的协调操作与运行、数据的交互、资源的分配等问题更加易于解决。很显然,本发明更能方便、有效、安全的满足客户的需要。
发明内容
本发明的目的在于:针对以上现有技术存在的不足,实现一种基于多线程技术的EXCEL数据导入,以克服现有技术的数据转换差、导入效率低、浪费性能等问题。为了达到以上目的,本发明包含如下模块:
创建模块——选择需要导入的EXCEL,创建UI界面。
验证模块——对EXCEL的数据类型进行验证,并给出验证数据,给下个模块使用。
转换模块——对错误的数据类型进行转换,并显示在UI界面上,用户可以手动进行转换。
创建线程模块——按照导入数据的大小根据指定的算法创建线程个数。
并行导入模块——线程同时进行导入,导入后生成报告。
为实现本发明的功能,上述功能模块还包括如下子模块:
验证模块——验证数据格式子模块
——验证数据格式的正确性。并把验证错误的消息发送到转换模块,便于数据的转换。
创建线程模块——计算子模块
——按照数据的大小、数据的行数进行线程数的计算,以便创建最高效率的线程数。
并行导入模块——销毁子模块、生成日志子模块
——数据导入完,线程自动销毁。并且释放资源。
——将导入后的结果生成到日志,便于系统的跟踪和回滚。
使用步骤为:
步骤一:创建组件。系统检测本组件需要的环境,并自动配置服务器中的环境。
步骤二:用户选择需要导入的EXCEL文档。
步骤三:导入后的文档以UI的方式显示给用户。并提示出验证数据的结果,和转换后数据格式的建议。用户也可以手动的修改数据和数据格式。只要数据和数据格式修改系统会自动验证。防止用户误操作后对数据导入的影响。
步骤四:按照数据的大小,数据的行数创建线程。各线程以并行的方式进行操作。
步骤五:数据导入到系统。线程自动销毁,释放资源。并生成日志文件。
如此,通过本发明,节省了导入数据的时间。保证了数据的正确性。便于数据间的交互。
具体实施方式
实施例一
使用Microsoft VisualStudio.Net2008开发工具开发服务器端和客户端运行组件,具体方式为:
创建模块——选择需要导入的EXCEL。创建UI界面。
验证模块——对EXCEL的数据类型进行验证。并给出验证数据,给下个模块使用。
转换模块——对错误的数据类型进行转换。并显示在UI界面上,用户可以手动进行转换。
创建线程模块——按照导入数据的大小根据指定的算法创建线程个数。
并行导入模块——线程同时进行导入。导入后生成报告。
为实现本发明的功能,上述功能模块还包括如下子模块:
验证模块——验证数据格式子模块
——验证数据格式的正确性。并把验证错误的消息发送到转换模块,便于数据的转换。
创建线程模块——计算子模块
——按照数据的大小、数据的行数进行线程数的计算,以便创建最高效率的线程数。
并行导入模块——生成日志模块
——将导入后的结果生成到日志,便于系统的跟踪和回滚。
使用步骤为:
步骤一:创建组件。系统检测本组件需要的环境,并自动配置服务器中的环境。
步骤二:用户选择需要导入的EXCEL文档。
步骤三:导入后的文档以UI的方式显示给用户。并提示出验证数据的结果,和转换后数据格式的建议。用户也可以手动的修改数据和数据格式。只要数据和数据格式修改系统会自动验证。防止用户误操作后对数据导入的影响。
步骤四:按照数据的大小,数据的行数,并根据服务器的硬件性能进行计算,并创建线程。各线程以并行的方式进行操作。
步骤五:数据导入到系统。线程自动销毁,释放资源。并生成日志文件。日志文件按照用户选定的保存地址进行保存。除上述实施例外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。
Claims (2)
1.一种基于多线程技术的EXCEL数据导入,其特征在于:完成多线程技术的EXCEL数据导入需要如下模块:
创建模块——选择需要导入的EXCEL,创建UI界面;
验证模块——对EXCEL的数据类型进行验证,并给出验证数据,给下个模块使用;
转换模块——对错误的数据类型进行转换,并显示在UI界面上,用户可以手动进行转换;
创建线程模块——按照导入数据的大小根据指定的算法创建线程个数;
并行导入模块——线程同时进行导入,导入后生成报告;
为实现本发明的功能,上述功能模块还包括如下子模块:
2.一种基于多线程技术的EXCEL数据导入,其特征在于:要实现多线程技术的EXCEL数据导入还需要如下步骤:
步骤一:创建组件,系统检测本组件需要的环境,并自动配置服务器中的环境;
步骤二:用户选择需要导入的EXCEL文档;
步骤三:导入后的文档以UI的方式显示给用户,并提示出验证数据的结果,和转换后数据格式的建议,用户也可以手动的修改数据和数据格式,只要数据和数据格式修改系统会自动验证,防止用户误操作后对数据导入的影响;
步骤四:按照数据的大小,数据的行数创建线程,各线程以并行的方式进行操作;
步骤五:数据导入到系统,线程自动销毁,释放资源,并生成日志文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103002062A CN103034647A (zh) | 2011-10-09 | 2011-10-09 | 一种基于多线程技术的excel数据导入 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103002062A CN103034647A (zh) | 2011-10-09 | 2011-10-09 | 一种基于多线程技术的excel数据导入 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103034647A true CN103034647A (zh) | 2013-04-10 |
Family
ID=48021549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103002062A Pending CN103034647A (zh) | 2011-10-09 | 2011-10-09 | 一种基于多线程技术的excel数据导入 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103034647A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484325A (zh) * | 2014-09-29 | 2015-04-01 | 黑龙江八一农垦大学 | 一种会计报表的处理方法及处理系统 |
CN105302835A (zh) * | 2014-07-29 | 2016-02-03 | 阿里巴巴集团控股有限公司 | 一种文件处理方法和设备 |
CN107085590A (zh) * | 2017-01-23 | 2017-08-22 | 山东浪潮商用系统有限公司 | 一种基于多线程技术的Excel数据导入系统 |
CN108427662A (zh) * | 2017-02-13 | 2018-08-21 | 北京京东尚科信息技术有限公司 | 非法信息的展示方法和装置 |
CN111858533A (zh) * | 2020-07-23 | 2020-10-30 | 山东浪潮商用系统有限公司 | 一种基于多线程技术的数据导入方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101419628A (zh) * | 2008-12-03 | 2009-04-29 | 浪潮集团山东通用软件有限公司 | 一种基于Excel文件格式的数据通用导入方法 |
CN101452450A (zh) * | 2007-11-30 | 2009-06-10 | 上海市电力公司 | 一种多源数据转换服务方法及其装置 |
-
2011
- 2011-10-09 CN CN2011103002062A patent/CN103034647A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452450A (zh) * | 2007-11-30 | 2009-06-10 | 上海市电力公司 | 一种多源数据转换服务方法及其装置 |
CN101419628A (zh) * | 2008-12-03 | 2009-04-29 | 浪潮集团山东通用软件有限公司 | 一种基于Excel文件格式的数据通用导入方法 |
Non-Patent Citations (1)
Title |
---|
冯炜锐 尹强飞: ".NET实现大批量Excel数据导入SQL SERVER", 《商场现代化》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105302835A (zh) * | 2014-07-29 | 2016-02-03 | 阿里巴巴集团控股有限公司 | 一种文件处理方法和设备 |
CN105302835B (zh) * | 2014-07-29 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 一种文件处理方法和设备 |
CN104484325A (zh) * | 2014-09-29 | 2015-04-01 | 黑龙江八一农垦大学 | 一种会计报表的处理方法及处理系统 |
CN107085590A (zh) * | 2017-01-23 | 2017-08-22 | 山东浪潮商用系统有限公司 | 一种基于多线程技术的Excel数据导入系统 |
CN108427662A (zh) * | 2017-02-13 | 2018-08-21 | 北京京东尚科信息技术有限公司 | 非法信息的展示方法和装置 |
CN111858533A (zh) * | 2020-07-23 | 2020-10-30 | 山东浪潮商用系统有限公司 | 一种基于多线程技术的数据导入方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103034647A (zh) | 一种基于多线程技术的excel数据导入 | |
CN106844315A (zh) | 基于一个操作界面下自动生成纳税申报表的方法及装置 | |
CN103714492A (zh) | 符合配电网管理特定数据标准的自动报告生成方法 | |
CN105046438A (zh) | 基于可视化流程配置的自定义流程配置办公系统 | |
CN109739915B (zh) | 一种跨领域共享数据模型构建方法 | |
CN1832408A (zh) | 一种在多种医疗信息系统间进行集成通讯的方法 | |
CN102542367A (zh) | 基于领域模型的云计算网络工作流处理方法、装置和系统 | |
CN103269381A (zh) | 基于云计算的web-scada能源管理和监控系统 | |
CN107220376B (zh) | 一种数据查询方法和装置 | |
CN101894348A (zh) | 一种自扩展的联机交易系统及其实现方法 | |
CN102546741A (zh) | 云计算系统 | |
CN110365497A (zh) | 消息推送方法、装置、电子设备及存储介质 | |
CN103516763A (zh) | 资源处理方法和系统以及装置 | |
US20120078971A1 (en) | Data management method | |
CN104346441B (zh) | 一种配电网信息数据动态集成交互方法 | |
CN102880832A (zh) | 一种集群下的数据海量管理的系统的实现方法 | |
CN108984156A (zh) | 一种基于模板的免代码开发的软件自动生成方法及系统 | |
CN103092982A (zh) | 基于多视图业务模型的信息服务系统 | |
CN105574010A (zh) | 数据查询方法及装置 | |
CN101609463B (zh) | 建立文单之间数据转换关系的方法及文单之间数据迁移的方法 | |
CN106843971A (zh) | Bios刷新方法、服务器、bmc、介质及存储控制器 | |
CN115757642A (zh) | 一种基于归档日志文件的数据同步方法及装置 | |
CN104317630B (zh) | 一种快速查询服务器产品支持软硬件配置的方法 | |
CN104657797A (zh) | 移动互联网电子政务平台系统 | |
CN103246707B (zh) | 一种基于协同管理模块的协同关系计算方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130410 |