本申请提出的JSON字符串数据压缩方法、装置及存储介质中,获取需要压缩的业务数据,其中业务数据利用标准JSON字符串格式表示,确定业务数据是否需要进行压缩,若确定业务数据需要进行压缩,则利用数据压缩算法对业务数据进行压缩,得到压缩后的业务数据,基于压缩后的业务数据生成数据对象还原函数。由此,本申请可以利用数据压缩算法对业务数据进行压缩,得到压缩后的业务数据,并基于压缩后的业务数据生成数据对象还原函数,并将数据对象还原函数发送到前端浏览器,使得业务数据进行压缩,从而无需传输大量重复业务数据,进而提高了数据传输效率。传输效率。传输效率。
【技术实现步骤摘要】
一种JSON字符串数据压缩方法、装置及存储介质
[0001]本申请涉及数据压缩
,尤其涉及一种JSON字符串数据压缩方法、装置及存储介质。
技术介绍
[0002]目前,系统中的前后端数据交互以JSON格式为主,数据从后端发送到前端浏览器需要经过JSON格式编码、网络传输、JSON格式数据解码三个步骤。其中,在特定业务场景中,如:频繁的数据查询、报表展示、数据导入等操作时,JSON格式交互的数据量会很大,从而容易造成网络堵塞、数据下载时间长。
[0003]相关技术中,后端服务通常对数据直接进行JSON编码,编码方式采用JSON标准格式,编码长度与发送数据量呈线性增长,从而使得数据传输效率低。
技术实现思路
[0004]本申请提供一种JSON字符串数据压缩方法、装置及存储介质,以解决上述相关技术中出现的问题。
[0005]本申请第一方面实施例提出一种JSON字符串数据压缩方法,可以包括:
[0006]获取业务数据,其中所述业务数据利用标准JSON字符串格式表示;
[0007]确定所述业务数据是否需要进行压缩;
[0008]若确定所述业务数据需要进行压缩,则利用数据压缩算法对所述业务数据进行压缩,得到压缩后的业务数据;
[0009]基于所述压缩后的业务数据生成数据对象还原函数。
[0010]本申请第二方面实施例提出一种JSON字符串数据压缩装置,可以包括:
[0011]获取模块,用于获取业务数据,其中所述业务数据利用标准JSON字符串格式表示;
[0012]确定模块,用于确定所述业务数据是否需要进行压缩;
[0013]压缩模块,用于若确定所述业务数据需要进行压缩,则利用数据压缩算法对所述业务数据进行压缩,得到压缩后的业务数据;
[0014]生成模块,用于基于所述压缩后的业务数据生成数据对象还原函数。
[0015]本申请第三方面实施例提出的计算机存储介质,其中,所述计算机存储介质存储有计算机可执行指令;所述计算机可执行指令被处理器执行后,能够实现如上第一方面所述的方法。
[0016]本申请第四方面实施例提出的计算机设备,其中,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述程序时,能够实现如上第一方面所述的方法。
[0017]本申请的实施例提供的技术方案至少带来以下有益效果:
[0018]本申请提出的JSON字符串数据压缩、装置及存储介质中,获取需要压缩的业务数据,其中业务数据利用标准JSON字符串格式表示,确定业务数据是否需要进行压缩,若确定
业务数据需要进行压缩,则利用数据压缩算法对业务数据进行压缩,得到压缩后的业务数据,基于压缩后的业务数据生成数据对象还原函数。由此,本申请可以利用数据压缩算法对业务数据进行压缩,得到压缩后的业务数据,并基于压缩后的业务数据生成数据对象还原函数,并将数据对象还原函数发送到前端浏览器,使得业务数据进行压缩,从而无需传输大量重复业务数据,进而提高了数据传输效率。
[0019]本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
[0020]本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0021]图1为根据本申请一个实施例提供的JSON字符串数据压缩方法的流程示意图;
[0022]图2为根据本申请一个实施例提供的标准JSON字符串格式的示意图;
[0023]图3为根据本申请一个实施例提供的JSON字符串数据压缩装置的结构示意图。
具体实施方式
[0024]下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
[0025]下面参考附图描述本申请实施例的JSON字符串数据压缩方法及装置。
[0026]实施例一
[0027]图1为根据本申请一个实施例提供的一种JSON字符串数据压缩方法的流程示意图,如图1所示,可以包括:
[0028]步骤101、获取业务数据,其中业务数据利用标准JSON字符串格式表示。
[0029]其中,在本申请的实施例之中,图2为本申请实施例提出的一种标准JSON字符串格式的示意图。
[0030]如图2所示,标准JSON字符串格式的中括号“[]”表示数组,大括号“{}”表示对象,对象的属性和值使用冒号:,多个属性使用逗号,分割。以及,业务数据是以数据库表的形式存储,基于此,每个数据对象的属性都是相同的,没有值的属性使用null(空值)表示。
[0031]步骤102、确定业务数据是否需要进行压缩。
[0032]其中,在本申请的实施例之中,在对业务数据进行压缩之前,还需要确定业务数据是否需要进行压缩,若确定业务数据需要进行压缩,则对该业务数据进行压缩;否则,无需对该业务数据进行压缩。
[0033]以及,在本申请的实施例之中,确定业务数据是否需要进行压缩的方法,可以包括以下步骤:
[0034]步骤一、确定业务数据的数据量。
[0035]其中,在本申请的实施例之中,可以根据标准JSON字符串格式中“{}”中的数量,确定业务数据的数据量。
[0036]步骤二、若业务数据的数据量大于或等于预设阈值,则确定业务数据需要压缩。
[0037]其中,在本申请的实施例之中,上述预设阈值可以提前进行设置。示例的,假设上述预设阈值为2,则若业务数据的数据量大于或等于2,则确定业务数据需要进行压缩。
[0038]步骤三、若业务数据的数据量小于预设阈值,则确定业务数据不需要进行压缩。
[0039]步骤103、若确定业务数据需要进行压缩,则利用数据压缩算法对业务数据进行压缩,得到压缩后的业务数据。
[0040]其中,在本申请的实施例之中,利用数据压缩算法对业务数据进行压缩,得到压缩后的业务数据的方法,可以包括以下步骤:
[0041]步骤1031、基于业务数据的标准JSON字符串格式,提取业务数据中的属性特征。
[0042]其中,在本申请的实施例之中,在标准JSON字符串格式数据中所有数据的属性是相同的并且重复出现,基于此可以提取业务数据中的属性值进行单独传输。
[0043]以及,在本申请的实施例之中,可以将标准JSON字符串格式中冒号:的前
“”
中的内容确定为属性,将冒号:后
“”
中的内容确定为该属性对应的数据。
[0044]步骤1032、将业务数据中所有属性特征对应的数据,转换为第一二维数组。
[0045]步骤1033、将第一二维数组进行数据处理得到数据索引和第二二维数组。
[0046]其中,在本申请的实施例之中,本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种JSON字符串数据压缩方法,其特征在于,所述方法包括:获取业务数据,其中所述业务数据利用标准JSON字符串格式表示;确定所述业务数据是否需要进行压缩;若确定所述业务数据需要进行压缩,则利用数据压缩算法对所述业务数据进行压缩,得到压缩后的业务数据;基于所述压缩后的业务数据生成数据对象还原函数。2.根据权利要求1所述的方法,其特征在于,所述利用数据压缩算法对所述业务数据进行压缩,得到压缩后的业务数据,包括:基于所述业务数据的标准JSON字符串格式,提取所述业务数据中的属性特征;将所述业务数据中所有属性特征对应的数据,转换为第一二维数组;将所述第一二维数组进行数据处理得到数据索引和第二二维数组;基于所述属性特征、所述数据索引和所述第二二维数组,得到压缩后的业务数据。3.根据权利要求2所述的方法,其特征在于,所述将所述第一二维数组进行数据处理得到数据索引和第二二维数组,包括:将所述第一二维数组中的空值去掉,并统计所述第一二维数组中每个数据出现的频率;将所述第一二维数组中满足第一索引条件和/或第二索引条件的数据进行数据索引,得到所述数据索引和所述第二二维数组。4.根据权利要求3所述的方法,其特征在于,所述第一索引条件包括所述数据的长度超过预设字符数量;所述第二索引条件包括数据出现的频率超过预设次数。5.根据权利要求2所述的方法,其特征在于,所述基于所述压缩后的业务数据生成数据对象还原函数,包括:基于所述属性特征生成解压逻辑;基于所述数据索引生成常量...
【专利技术属性】
技术研发人员:翁跃冬,曾纪才,王仲,杨喜名,范希静,
申请(专利权)人:北京中科江南信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。