一种Excel导出方法、装置、介质及设备制造方法及图纸

技术编号:32575908 阅读:19 留言:0更新日期:2022-03-09 17:05
本发明专利技术公开了一种Excel导出方法、装置、介质及设备,属于软件开发技术领域,主要包括:根据请求客户端的查询请求构建查询对象;根据查询对象获取查询结果的数量,并根据查询结果的数量对查询结果进行分页,之后对所有查询结果进行分页循环加载;以及将当前加载页查询结果内容转化为导出数据传输对象,之后利用导出数据传输对象生成Excel数据行。本发明专利技术的应用对Excel导出过程中的数据加载步骤进行优化,避免因加载大数据量时造成的系统资源消耗和数据库资源消耗。据库资源消耗。据库资源消耗。

【技术实现步骤摘要】
一种Excel导出方法、装置、介质及设备


[0001]本申请涉及软件开发
,特别是一种Excel导出方法、装置、存储介质及计算机设备。

技术介绍

[0002]大数据量的导出生成Excel在实际工作中经常用到,其本质就是从数据库中导出所需的数据,并将这些数据以Excel的形式呈现。
[0003]大数据量的数据导出,如果没有优化过,在加载大数据量数据导出时,会出现大量的系统资源消耗和数据库资源消耗,如果在系统访问高发期和并发量较高时,很有可能对系统应用和数据库查询大批量数据时耗尽数据库资源,造成数据库或应用系统的崩溃。

技术实现思路

[0004]本专利技术提供一种Excel导出方法,对Excel导出过程中的数据加载步骤进行优化,避免因加载大数据量时造成的系统资源消耗和数据库资源消耗。
[0005]为了解决上述问题,本专利技术采用的一个技术方案是:提供一种Excel导出方法,该方法包括:
[0006]根据请求客户端的查询请求构建查询对象;
[0007]根据查询对象获取查询结果的数量,并根据查询结果的数量对查询结果进行分页,之后对所有查询结果进行分页循环加载;以及
[0008]将当前加载页查询结果内容转化为导出数据传输对象,之后利用导出数据传输对象生成Excel数据行。
[0009]本专利技术采用的另一个技术方案是:提供一种Excel导出装置,该装置包括:
[0010]用于根据请求客户端的查询请求构建查询对象的模块;
[0011]用于根据查询对象获取查询结果的数量,并根据查询结果的数量对查询结果进行分页,之后对所有查询结果进行分页循环加载的模块;以及
[0012]用于将当前加载页查询结果内容转化为导出数据传输对象,之后利用导出数据传输对象生成Excel数据行的模块。
[0013]在本专利技术的另一个技术方案中,提供一种计算机可读存储介质,其存储有计算机指令,其中计算机指令被操作以执行方案中的Excel导出方法。
[0014]在本专利技术的另一技术方案中,提供一种计算机设备,其包括至少一个处理器;以及与至少一个处理器进行通信连接的存储器,其中,存储器存储有可被至少一个处理器执行的计算机指令,至少一个处理器操作计算机指令以执行方案中的Excel导出方法。
[0015]本专利技术技术方案可以达到的有益效果是:本专利技术提出一种Excel导出方法、装置、计算机可读存储介质以及计算机设备,对Excel导出过程中的数据加载步骤进行优化,避免因加载大数据量时造成的系统资源消耗和数据库资源消耗。
附图说明
[0016]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0017]图1为本专利技术一种Excel导出方法一个具体实施方式的示意图;
[0018]图2为本专利技术一种Excel导出装置一个具体实施方式的示意图。
[0019]通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
[0020]下面结合附图对本专利技术的较佳实施例进行详细阐述,以使本专利技术的优点和特征能更易于被本领域技术人员理解,从而对本专利技术的保护范围做出更为清楚明确的界定。
[0021]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0022]图1所示为本专利技术一种Excel导出方法一个具体实施方式的示意图。
[0023]在该具体实施方式中,Excel导出方法主要包括:
[0024]过程S101:根据请求客户端的查询请求构建查询对象;
[0025]过程S102:根据查询对象获取查询结果的数量,并根据查询结果的数量对查询结果进行分页,之后对所有查询结果进行分页循环加载;以及
[0026]过程S103:将当前加载页查询结果内容转化为导出数据传输对象,之后利用导出数据传输对象生成Excel数据行。
[0027]通过本专利技术提出的一种Excel导出方法,对Excel导出过程中的数据加载步骤进行优化,避免因加载大数据量时造成的系统资源消耗和数据库资源消耗。
[0028]在图1所示的具体实施方式中,本专利技术的Excel导出方法包括过程S101:根据请求客户端的查询请求构建查询对象。此过程以便于进一步根据查询对象获取查询结果的数量,并根据查询结果的数量对查询结果进行分页,之后对所有查询结果进行分页循环加载。
[0029]具体地,本专利技术以物流管理平台为例,此物流管理平台的数据库中可以包含出口口岸代码、运输方式、提单号、商品批次号、总包号、物流运单编号、订单编号、重量、数量等数据属性信息。实际应用中,用户可以根据自身需求构建查询对象,例如用户需要数据库中与“北京市”相关的所有信息,那么用户可以选择北京市,数据库将“北京市”作为查询条件,也就是即将进行查询的查询对象。
[0030]在图1所示的具体实施方式中,本专利技术的Excel导出方法包括过程S102:根据查询
对象获取查询结果的数量,并根据查询结果的数量对查询结果进行分页,之后对所有查询结果进行分页循环加载。此过程将数据加载步骤进行优化,避免因加载大数据量时造成的系统资源消耗和数据库资源消耗。
[0031]具体地,可以采用MyBatis针对“北京市”进行查询,其中的MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射,此处的作用主要用于映射查询。利用MyBatis对接数据库查询与“北京市”相关的所有信息,最终映射查询到的与“北京市”相关的所有信息即查询结果,查询结果与查询对象(查询条件)相关,查询条件范围越大时查询结果一般越多。此处MyBatis只是查询,并没有加载。
[0032]例如查询获取到与“北京市”相关的所有信息有5000条,现有技术是将这5000条查询结果一次性加载出来,不仅系统资源消耗大,而且数据库资源消耗也很大。本专利技术则是将这5000条查询结果进行分页循环加载,可以设置每页加载500条,那么5000条查询结果将被分为十页,每页500条。对查询结果进行分页循环加载。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种Excel导出方法,其特征在于,包括:根据请求客户端的查询请求构建查询对象;根据所述查询对象获取查询结果的数量,并根据所述查询结果的数量对所述查询结果进行分页,之后对所有所述查询结果进行分页循环加载;以及将当前加载页查询结果内容转化为导出数据传输对象,之后利用所述导出数据传输对象生成Excel数据行。2.如权利要求1所述的Excel导出方法,其特征在于,还包括,根据所述第一页查询结果内容构建Excel表头,将所述Excel数据行追加到所述Excel表头下,生成完整Excel字节流。3.如权利要求2所述的Excel导出方法,其特征在于,还包括,对所述完整Excel字节流设置返回所需信息后,返回至所述请求客户端,并弹窗提示用户下载保存。4.如权利要求1所述的Excel导出方法,其特征在于,所述将当前加载页查询结果内容转化为导出数据传输对象的过程包括,根据预先配置好的数据传输对象的属性对所述当前加载页查询结果内容进行筛选,并将筛选出得到的当前加载页筛选结果转化为所述导出数据传输对象。5.如权利要求2所述的Excel导出方法,其特征在于,所述根据所述第一页查询结果内容构建Excel表头的过程包括,根据预先配置好的数据传输对象的属性,利用所述第一页查询结果内容的数据属性构建Excel表头。6.如权利要求5所述的Excel导出方法,其特征在于,在完成构建所述Exce...

【专利技术属性】
技术研发人员:郝桃陆伟
申请(专利权)人:北京联创新天科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1