System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于客户端的Excel导入预处理与服务器负载均衡方法及系统技术方案_技高网

基于客户端的Excel导入预处理与服务器负载均衡方法及系统技术方案

技术编号:44566868 阅读:4 留言:0更新日期:2025-03-11 14:24
本发明专利技术属于计算机技术领域,具体涉及基于客户端的Excel导入预处理与服务器负载均衡方法及系统。方法包括:S1,提供下载模版;S2,用户根据下载模版,填充数据内容,并上传填写完后的Excel文件;S3,客户端解析Excel文件,将Excel页面里面的内容,转化为文本数组,并获取原始的数据;S4,调用服务器端的表字段类型接口和检查校验接口,检查步骤S3中的文本数组,并返回结构化的数据和错误的提示;S5,根据下载模版中字段的类型,用类型子组件去渲染步骤S4中返回的数据;S6,待客户端没有错误提示,保存批量上传数据到服务器。本发明专利技术具有能够提前预判错误信息,并减少服务器压力,且能够确保服务器稳定的特点。

【技术实现步骤摘要】

本专利技术属于计算机,具体涉及基于客户端的excel导入预处理与服务器负载均衡方法及系统。


技术介绍

1、在各类型系统中,数据库表的数据,通过excel导入的需求日益增加。传统的处理方式即web页面上传excel文件,服务器解析excel文件,读取数据,插入数据表。所有的处理都在服务器端进行。

2、这种传统实现方式往往会有以下弊端:

3、一、当遇到excel文件比较大,或者并发比较多时,服务器端压力通常比较大,很容易造成服务器的崩溃。

4、二、用户写在excel里面的数据,可能并不是数据库表希望存储的数据结构。比如数据库字段是时间类型,excel表里面不是时间格式的一个文本。又或者人员的字段,excel表里面写的是张三,系统的组织架构里面,可能存在多个用户张三。服务器端处理,不能马上客观的显示错误信息。一般来说是操作完所有插入动作,最后返回一个错误的提示信息给前端展示。对于信息,不能进行预处理。

5、三、当遇到大数据量文档时,后台服务器往往需要处理较长时间,且无法给出精确的剩余时间预估,使客户端需要等待较长时间。不仅交互体验差,且容易引起客户端请求超时等错误。

6、基于上述问题,设计一种能够提前预判错误信息,并减少服务器压力,且能够确保服务器稳定的基于客户端的excel导入预处理与服务器负载均衡方法及系统,就显得十分重要。


技术实现思路

1、本专利技术是为了克服现有技术中,现有excel文件导入方法,存在服务器端压力大,错误信息无法得到预处理以及交互体验差的问题,提供了一种能够提前预判错误信息,并减少服务器压力,且能够确保服务器稳定的基于客户端的excel导入预处理与服务器负载均衡方法及系统。

2、为了达到上述专利技术目的,本专利技术采用以下技术方案:

3、基于客户端的excel导入预处理与服务器负载均衡方法,包括如下步骤;

4、s1,提供下载模版;

5、s2,用户根据下载模版,填充数据内容,并上传填写完后的excel文件;

6、s3,客户端解析excel文件,将excel页面里面的内容,转化为文本数组,并获取原始的数据;

7、s4,调用服务器端的表字段类型接口和检查校验接口,检查步骤s3中的文本数组,并返回结构化的数据和错误的提示;

8、s5,根据下载模版中字段的类型,用类型子组件去渲染步骤s4中返回的数据;

9、s6,待客户端没有错误提示,保存批量上传数据到服务器。

10、作为优选,步骤s1中,所述下载模版,用于提供用户excel模版,并使用户按照excel模版,进行数据填充;所述excel模版包含需要导入的数据库表和数据库表字段。

11、作为优选,步骤s3包括如下步骤:

12、s31,当用户上传excel文件时,客户端利用filereader对象(html5文件对象读取器,允许在客户端异步读取用户选择的文件 ),读取excel文件里的内容;

13、s32,读取后,通过uint8array对象(javascript类型化数组,用于表示一个8位无符号整型数组),将读取的内容转化为二进制数组;

14、s33,利用xlsx插件,解析所述二进制数组,最终得到初步的字符串数组,即文本数组。

15、作为优选,步骤s4包括如下步骤:

16、s41,调用服务器端提供的表字段类型接口和检查校验接口,把解析出来的文本数组,作为接口的参数,全部传递给后端;

17、s42,后端依据预先设计的检查逻辑,判断接收到的文本数组填写是否正确;所述文本数组包括excel模版的表结构、excel模版的字段名称以及excel模版字段名称对应的文本内容。

18、作为优选,步骤s5包括如下步骤:

19、s51,根据excel模版的表名称,调用服务器端的接口,返回表的字段和字段对应的类型;

20、设定每个单元格作为一个类型子组件;不同的类型子组件对应处理不同的数据格式内容;不同的类型子组件都具有相同的功能,包括存储数据和显示错误的数据;

21、s52,当导入的excel数据量过大时,利用各个类型子组件和预先设计的核心处理组件,分页显示导入的excel数据;

22、其中,所述核心处理组件,用于数据的维护,处理以及后端的交互;各个类型子组件,只负责渲染自己单元格的数据,若数据发生改变,则同步到核心处理组件的数据中;当切换页码时,类型子组件只加载当前页码的数据;

23、s53,如有错误信息,则给出错误的提示,并调整相应的错误数据。

24、作为优选,步骤s6包括如下步骤:

25、s61,调用服务端业务批量保存接口,把所述类型组件里面的数据,批量传递给服务器端保存。

26、本专利技术还提供了基于客户端的excel导入预处理与服务器负载均衡系统包括:

27、模版提供模块,用于提供下载模版;

28、数据填写与上传模块,用于用户根据下载模版,填充数据内容,并上传填写完后的excel文件;

29、解析模块,用于客户端解析excel文件,将excel页面里面的内容,转化为文本数组,并获取原始的数据;

30、检查模块,用于调用服务器端的表字段类型接口和检查校验接口,检查文本数组,并返回结构化的数据和错误的提示;

31、渲染模块,用于根据下载模版中字段的类型,用类型子组件去渲染返回的数据;

32、保存模块,用于待客户端没有错误提示,保存批量上传数据到服务器。

33、本专利技术与现有技术相比,有益效果是:(1)本专利技术能够最大程度的避免错误数据的插入;前端预处理,能够比较直观的显示错误的提示;(2)本专利技术能够减少服务器的压力,导入大部分的工作,交给客户端处理,大量减少了服务器的压力;在实际的某个项目中,有流程数据方阵批量导入的功能,原实现逻辑是后端处理全部的导入数据,由于无法判断用户导入的数据和格式,服务器经常出现cpu爆满的情况;后改为前端预处理以后,cpu爆满的现象不在出现。

本文档来自技高网...

【技术保护点】

1.基于客户端的Excel导入预处理与服务器负载均衡方法,其特征在于,包括如下步骤;

2.根据权利要求1所述的基于客户端的Excel导入预处理与服务器负载均衡方法,其特征在于,步骤S1中,所述下载模版,用于提供用户Excel模版,并使用户按照Excel模版,进行数据填充;所述Excel模版包含需要导入的数据库表和数据库表字段。

3.根据权利要求2所述的基于客户端的Excel导入预处理与服务器负载均衡方法,其特征在于,步骤S3包括如下步骤:

4.根据权利要求3所述的基于客户端的Excel导入预处理与服务器负载均衡方法,其特征在于,步骤S4包括如下步骤:

5.根据权利要求4所述的基于客户端的Excel导入预处理与服务器负载均衡方法,其特征在于,步骤S5包括如下步骤:

6.根据权利要求5所述的基于客户端的Excel导入预处理与服务器负载均衡方法,其特征在于,步骤S6包括如下步骤:

7.基于客户端的Excel导入预处理与服务器负载均衡系统,用于实现权利要求1-6任一项所述的基于客户端的Excel导入预处理与服务器负载均衡方法,其特征在于,所述基于客户端的Excel导入预处理与服务器负载均衡系统包括:

...

【技术特征摘要】

1.基于客户端的excel导入预处理与服务器负载均衡方法,其特征在于,包括如下步骤;

2.根据权利要求1所述的基于客户端的excel导入预处理与服务器负载均衡方法,其特征在于,步骤s1中,所述下载模版,用于提供用户excel模版,并使用户按照excel模版,进行数据填充;所述excel模版包含需要导入的数据库表和数据库表字段。

3.根据权利要求2所述的基于客户端的excel导入预处理与服务器负载均衡方法,其特征在于,步骤s3包括如下步骤:

4.根据权利要求3所述的基于客户端的excel导入预处理与服...

【专利技术属性】
技术研发人员:杨斌雷韩彤俞哲峰
申请(专利权)人:杭州微宏科技有限公司
类型:发明
国别省市:

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

1