一种数据维护方法及装置与流程

文档序号:18899302发布日期:2019-10-18 21:42阅读:150来源:国知局
一种数据维护方法及装置与流程

本发明涉及计算机技术领域,具体而言,涉及一种数据维护方法及装置。



背景技术:

随着大数据时代的发展,数据的可视化、图形化交互成为一种必然的趋势,在前端页面通过数据的不同类型、不同维度进行数据的展示与分析,但数据只做增量,体积会过于庞大,造成浏览器的内存占用过大,页面卡顿。尤其是在公安、金融等方面,有着很多的需求场景。

相关技术中为横向tab页签,纵向数据列表的方式展示数据内容。每个tab页签可视为一个数据集合,每个数据又可以查看详细内容,同一条数据可能会出现在多个tab页签中。可解决页面切换及tab页签切换时,能保留跳出前查看的数据状态。

为解决多个场景的需求,将后端接口层提供的数据序列,通过前端的格式化的方式,重组为渲染需要的数据格式。解决重复开发的问题,释放开发及维护时需要投入的人工成本,这种解决方案的弊端,是返回的数据的在前端需要重组,在数据量大的情况下,可能会出现渲染延迟的问题。

针对相关技术中网页数据量大,体积过于庞大,导致浏览器内存占用过大页面卡顿的问题,尚未提出解决方案。



技术实现要素:

本发明实施例提供了一种数据维护方法及装置,以至少解决相关技术中网页数据量大,体积过于庞大,导致浏览器内存占用过大页面卡顿的问题。

根据本发明的一个实施例,提供了一种数据维护方法,包括:

从同一入口接收页面中多个tab页签产生的数据,其中,所述数据包括数据标识id、数据内容以及数据对应的tab页签id;

根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,所述数据集合包括tab页签中出现的数据id与对应数据内容的集合,所述数据统计结果为数据在所述多个tab页签中出现的次数。

可选地,根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新包括:

在所述数据内容为新增内容时,将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中;

在所述数据内容为删除内容时,更新或删除所述数据统计结果中所述数据id对应的次数。

可选地,将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中包括:

判断所述数据id和所述数据对应的tab页签id是否存在于所述数据列表中;

根据判断的结果将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中。

可选地,根据判断的结果将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中包括:

在判断结果为均为否的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,将所述tab页签id添加到所述tab页签的集合中,并在所述数据统计结果中添加所述数据id对应的次数;

在判断结果为均为是的情况下,将所述数据统计结果中所述数据id对应的次数加1;

在所述数据id存在于所述数据列表,所述tab页签id不存在于所述数据列表中的情况下,将所述数据统计结果中所述数据id对应的次数加1,并将所述tab页签id添加到所述tab页签的集合中;

在所述数据id不存在于所述数据列表,所述tab页签id存在于所述数据列表中的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,并在所述数据统计结果中添加所述数据id对应的次数。

可选地,更新或删除所述数据统计结果中所述数据id对应的次数包括:

判断所述数据统计结果中所述数据id对应的次数是否大于1;

在判断结果为是的情况下,在所述数据统计结果中将所述数据id对应的次数减1;

在判断结果为否的情况下,将所述数据统计结果中所述数据id与对应的次数删除,并将所述数据集合中的所述数据id与对应的数据内容删除。

可选地,在根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新之后,所述方法还包括:

遍历所述数据列表;

查询所述数据列表中数据统计结果为0的数据id;

删除所述数据集合中所述数据id对应的数据内容。

可选地,所述tab页签的集合包括:tab页签id以及所述tab页签id对应的内容,其中,所述tab页签id对应的内容包含tab页签id,tab页签的标题,数据类型,每个tab页签包含的数据集合,tab页签中当前展示的数据id。

根据本发明的另一个实施例,还提供了一种数据维护装置,包括:

接收模块,用于从同一入口接收页面中多个tab页签产生的数据,其中,所述数据包括数据标识id、数据内容以及数据对应的tab页签id;

更新模块,用于根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,所述数据集合包括tab页签中出现的数据id与对应数据内容的集合,所述数据统计结果为数据在所述多个tab页签中出现的次数。

可选地,所述更新模块包括:

添加子模块,用于在所述数据内容为新增内容时,将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中;

更新子模块,用于在所述数据内容为删除内容时,更新或删除所述数据统计结果中所述数据id对应的次数。

可选地,所述添加子模块包括:

第一判断单元,用于判断所述数据id和所述数据对应的tab页签id是否存在于所述数据列表中;

添加单元,用于根据判断的结果将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中。

可选地,所述添加单元,还用于

在判断结果为均为否的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,将所述tab页签id添加到所述tab页签的集合中,并在所述数据统计结果中添加所述数据id对应的次数;

在判断结果为均为是的情况下,将所述数据统计结果中所述数据id对应的次数加1;

在所述数据id存在于所述数据列表,所述tab页签id不存在于所述数据列表中的情况下,将所述数据统计结果中所述数据id对应的次数加1,并将所述tab页签id添加到所述tab页签的集合中;

在所述数据id不存在于所述数据列表,所述tab页签id存在于所述数据列表中的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,并在所述数据统计结果中添加所述数据id对应的次数。

可选地,所述更新子模块包括:

第二判断单元,用于判断所述数据统计结果中所述数据id对应的次数是否大于1;

减少单元,用于在判断结果为是的情况下,在所述数据统计结果中将所述数据id对应的次数减1;

删除单元,用于在判断结果为否的情况下,将所述数据统计结果中所述数据id与对应的次数删除,并将所述数据集合中的所述数据id与对应的数据内容删除。

可选地,所述装置还包括:

遍历模块,用于遍历所述数据列表;

查询模块,用于查询所述数据列表中数据统计结果为0的数据id;

删除模块,用于删除所述数据集合中所述数据id对应的数据内容。

可选地,所述tab页签的集合包括:tab页签id以及所述tab页签id对应的内容,其中,所述tab页签id对应的内容包含tab页签id,tab页签的标题,数据类型,每个tab页签包含的数据集合,tab页签中当前展示的数据id。

根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。

通过本发明,通过从同一入口接收页面中多个tab页签产生的数据,并更新到预先设置的数据列表中,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,由于数据列表中相同数据id对应数据内容只保存一次,只是在数据统计结果中增加出现的次数,从而避免了相同数据的重复存储,使得数据体积相对缩小,因此,可以解决相关技术中网页数据量大,体积过于庞大,导致浏览器内存占用过大页面卡顿的问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明实施例的一种数据维护方法的移动终端的硬件结构框图;

图2是根据本发明实施例的数据维护方法的流程图;

图3是根据本发明实施例的数据维护装置的框图;

图4是根据本发明优选实施例的数据维护装置的框图一;

图5是根据本发明优选实施例的数据维护装置的框图二。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

实施例1

本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种数据维护方法的移动终端的硬件结构框图,如图1所示,移动终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,可选地,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的报文接收方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(networkinterfacecontroller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(radiofrequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。

基于上述的移动终端,本实施例提供了一种数据维护方法,图2是根据本发明实施例的数据维护方法的流程图,如图2所示,该流程包括如下步骤:

步骤s202,从同一入口接收页面中多个tab页签产生的数据,其中,所述数据包括数据标识id、数据内容以及数据对应的tab页签id;

步骤s204,根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,所述数据集合包括tab页签中出现的数据id与对应数据内容的集合,所述数据统计结果为数据在所述多个tab页签中出现的次数。

通过上述步骤s202至s204,通过从同一入口接收页面中多个tab页签产生的数据,并更新到预先设置的数据列表中,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,由于数据列表中相同数据id对应数据内容只保存一次,只是在数据统计结果中增加出现的次数,从而避免了相同数据的重复存储,使得数据体积相对缩小,因此,可以解决相关技术中网页数据量大,体积过于庞大,导致浏览器内存占用过大页面卡顿的问题。

本发明实施例中,上述步骤s204具体可以包括:

s2041,在所述数据内容为新增内容时,将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中;

s2042,在所述数据内容为删除内容时,更新或删除所述数据统计结果中所述数据id对应的次数。

可选地,上述步骤s2041具体可以包括:

判断所述数据id和所述数据对应的tab页签id是否存在于所述数据列表中;

根据判断的结果将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中。

进一步的,在判断结果为均为否的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,将所述tab页签id添加到所述tab页签的集合中,并在所述数据统计结果中添加所述数据id对应的次数;

在判断结果为均为是的情况下,将所述数据统计结果中所述数据id对应的次数加1;

在所述数据id存在于所述数据列表,所述tab页签id不存在于所述数据列表中的情况下,将所述数据统计结果中所述数据id对应的次数加1,并将所述tab页签id添加到所述tab页签的集合中;

在所述数据id不存在于所述数据列表,所述tab页签id存在于所述数据列表中的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,并在所述数据统计结果中添加所述数据id对应的次数。

可选地,上述步骤s2042具体可以包括:

判断所述数据统计结果中所述数据id对应的次数是否大于1;

在判断结果为是的情况下,在所述数据统计结果中将所述数据id对应的次数减1;

在判断结果为否的情况下,将所述数据统计结果中所述数据id与对应的次数删除,并将所述数据集合中的所述数据id与对应的数据内容删除。

本发明实施例,为例进一步减少数据占用的内存,将数据列表中在多个tab页签中均不在出现的数据id及对应的内容删除,具体地,遍历所述数据列表,查询所述数据列表中数据统计结果为0的数据id,删除所述数据集合中所述数据id对应的数据内容。

本发明实施例中的上述tab页签的集合可以包括:tab页签id以及所述tab页签id对应的内容,其中,所述tab页签id对应的内容包含tab页签id,tab页签的标题,数据类型,每个tab页签包含的数据集合,tab页签中当前展示的数据id。

本发明实施例采用数据输入服务器完成存储和计算,用户可通过app、网页端、信息推送、邮件推送等方式获取监测数据。

通过本发明实施例,在可智能分析监测范围内的鼠种情况,辅助鼠患防治人员开展有针对性的驱鼠、捕鼠行动,一定程度上提高鼠患防治工作的成功率。

多维度、减小体积的本地数据维护方案采用json格式(javascriptobjectnotation,js对象格式,采用完全独立于编程语言的稳步格式来存储和表示数据),数据包含当前展示的tab页签id,tab页签的集合,数据集合,数据统计,如下:

以上示例中,current为当前展示的tab页签id,navtabs为tab页签的集合,filedat为数据集合,filecount为数据统计结果。

navtabs:以tab页签的id作为key,value包含tabid(tab页签id),tabtitle(tab页签的标题,用来展示),tabtype(数据类型),filelist(每个tab页签包含的数据集合),grouplist(每个tab页签包含的群体数据),current(该tab页签中默认展示的数据id)。

filedata:以数据id作为key,value为数据对应的详细内容。

filecount:以数据id作为key,value为该数据在不同tab页签中出现的总和,当某数据统计结果为0时,从filedata中删除对应的数据,以达到释放内存的目的。

以功能模块涉及tab页签及tab中数据集新增、删除、切换等操作为例,为简化数据格式化步骤,使用唯一入口的方式维护数据格式:

/**

*@nameutils#updatefiledata

*@function

*@param{object}data【必填】

*@param{string}type:

changetab/changeitem/del/additem/add/changekey【必填】

*@param{string}tabdata:tabid【可选】

*@desc维护档案页数据结构。

*/

updatefiledata:function(type,arg,callback){

switch(type){

case'del':

//删除tab数据集中的单条数据

break;

case'changetab':

//tab中数据集变化,如切换横向tab展示

break;

case'changeitem':

//tab数据集中数据变化,如切换纵向数据展示

break;

case'additem':

//tab数据集中,增加数据

break;

case'changekey':

//默认展示数据变化

break;

default:

//增加tab数据集

break;

}

}

组装好需要的数据后,传给具体页面进行数据解析,针对不同数据类型等,会展示出不同的页面效果。

将数据通过统一入口传入,通过不同情况,数据进入各自的处理流程,如下:

updatefiledata(‘add’,data{},func)

addtabdataaction(snapshot,data{},func)

说明:

updatefiledata为数据统一入口;

该操作为像数据中增加tab数据集;

addtabdataaction为处理增加tab数据集的流程,其中snapshot为目前已存在的数据;

处理好的数据,存入浏览器的本地缓存;

localstorage(key,data)

数据存入本地缓存后,调用callback触发页面重渲染;

针对不同类型及维度的数据,渲染效果。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

本发明实施例,还提供了一种数据维护装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图3是根据本发明实施例的数据维护装置的框图,如图3所示,包括:

接收模块32,用于从同一入口接收页面中多个tab页签产生的数据,其中,所述数据包括数据标识id、数据内容以及数据对应的tab页签id;

更新模块34,用于根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,所述数据集合包括tab页签中出现的数据id与对应数据内容的集合,所述数据统计结果为数据在所述多个tab页签中出现的次数。

图4是根据本发明优选实施例的数据维护装置的框图一,如图4所示,所述更新模块34包括:

添加子模块42,用于在所述数据内容为新增内容时,将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中;

更新子模块44,用于在所述数据内容为删除内容时,更新或删除所述数据统计结果中所述数据id对应的次数。

可选地,所述添加子模块42包括:

第一判断单元,用于判断所述数据id和所述数据对应的tab页签id是否存在于所述数据列表中;

添加单元,用于根据判断的结果将所述数据标识id、所述数据内容以及所述数据对应的tab页签id中至少之一添加到所述数据列表中。

可选地,所述添加单元54,还用于

在判断结果为均为否的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,将所述tab页签id添加到所述tab页签的集合中,并在所述数据统计结果中添加所述数据id对应的次数;

在判断结果为均为是的情况下,将所述数据统计结果中所述数据id对应的次数加1;

在所述数据id存在于所述数据列表,所述tab页签id不存在于所述数据列表中的情况下,将所述数据统计结果中所述数据id对应的次数加1,并将所述tab页签id添加到所述tab页签的集合中;

在所述数据id不存在于所述数据列表,所述tab页签id存在于所述数据列表中的情况下,将所述数据id与对应的数据内容添加到所述数据集合中,并在所述数据统计结果中添加所述数据id对应的次数。

可选地,所述更新子模块44包括:

第二判断单元,用于判断所述数据统计结果中所述数据id对应的次数是否大于1;

减少单元,用于在判断结果为是的情况下,在所述数据统计结果中将所述数据id对应的次数减1;

删除单元,用于在判断结果为否的情况下,将所述数据统计结果中所述数据id与对应的次数删除,并将所述数据集合中的所述数据id与对应的数据内容删除。

图5是根据本发明优选实施例的数据维护装置的框图二,如图5所示,所示,所述装置还包括:

遍历模块52,用于遍历所述数据列表;

查询模块54,用于查询所述数据列表中数据统计结果为0的数据id;

删除模块56,用于删除所述数据集合中所述数据id对应的数据内容。

可选地,所述tab页签的集合包括:tab页签id以及所述tab页签id对应的内容,其中,所述tab页签id对应的内容包含tab页签id,tab页签的标题,数据类型,每个tab页签包含的数据集合,tab页签中当前展示的数据id。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

实施例3

本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s11,从同一入口接收页面中多个tab页签产生的数据,其中,所述数据包括数据标识id、数据内容以及数据对应的tab页签id;

s12,根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,所述数据集合包括tab页签中出现的数据id与对应数据内容的集合,所述数据统计结果为数据在所述多个tab页签中出现的次数。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read-onlymemory,简称为rom)、随机存取存储器(randomaccessmemory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。

实施例4

本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

s11,从同一入口接收页面中多个tab页签产生的数据,其中,所述数据包括数据标识id、数据内容以及数据对应的tab页签id;

s12,根据所述数据标识id、所述数据内容以及所述数据对应的tab页签id对预先设置的数据列表进行更新,其中,所述数据列表包括当前展示的tab页签id,tab页签的集合,数据集合以及数据统计结果,所述数据集合包括tab页签中出现的数据id与对应数据内容的集合,所述数据统计结果为数据在所述多个tab页签中出现的次数。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1