一种数据对比的方法及装置制造方法及图纸

技术编号:16587525 阅读:72 留言:0更新日期:2017-11-18 15:08
本发明专利技术公开了一种数据对比的方法及装置,所述方法包括:保存原始数据到第一HashMap中,保存处理后的数据到第二HashMap中;分别遍历第一HashMap和所述第二HashMap中的Key值,并查找对方是否存在所述Key值,如果不存在,则判断Key值对应的数据记录产生了变更;如果存在,判断第一HashMap中Key值对应的Value值和所述第二HashMap中所述Key值对应的Value值是否相同,如果相同,则判断所述Key值对应的数据未发生修改;如果不同,则判断所述Key值对应的数据记录为修改记录。本申请仅仅用了两个单重循环而非双重循环,因而减少了数据处理的时间,提高了数据处理的效率。

Method and device for data comparison

The invention discloses a method and a device for comparing a data, the method comprises the following steps: save the original data to the first HashMap, save the processed data to the second HashMap respectively; the first traversal HashMap and the second HashMap Key value, and find each other whether or not there is the Key value, if it does not exist determine the Key value corresponding to the data record has changed; if there is, determining whether the first HashMap Key value in the Key corresponding to the Value value and the second value HashMap of the corresponding Value value is the same, if the same, then determine the Key value of the data is not changed; if different, judging the corresponding Key value is recorded as a record of changes. This application only uses two single loops instead of double loops, thus reducing the time of data processing and improving the efficiency of data processing.

【技术实现步骤摘要】
一种数据对比的方法及装置
本专利技术涉及信息
,特别是涉及一种数据对比的方法及装置。
技术介绍
在信息技术行业中,会对有些数据进行处理,因此工作人员常常需要对处理前后的数据进行对比,找出其中的变化以便能够进行下一步的分析。比如在Web系统中使用表格展示的用户配置的数据,就可以对其进行新增、修改、删除等处理,然后再将其保存至后台,当这些数据发生改变时,软件开发人员就需要把变更后的数据与原始数据对比,快速准确地找出变更前后数据的变化。目前解决这个问题一般采用将数据保存在数组之中,比较处理前后两个数组之间的差异,即分别遍历原始数据所在数组和处理后数据所在的数组,在遍历原始数据所在的数组时与处理后数据所在的数组进行比较,在遍历处理后数据所在的数组时与原始数据所在的数组进行比较,根据这两次数组中数据的比较来找出那些进行过变更的数据。这种方法虽然可行,但是数据处理的时间较长,数据处理的效率低下。
技术实现思路
本专利技术的目的是提供一种数据对比的方法及装置,以解决数据处理的时间较长,数据处理的效率低下的问题。保存原始数据到第一HashMap中,保存处理后的数据到第二HashMap中;分别遍历所述第一HashMap和所述第二HashMap中的Key值,并查找对方是否存在所述Key值,如果不存在,则判断所述Key值对应的数据记录产生了变更;如果存在,判断所述第一HashMap中所述Key值对应的Value值和所述第二HashMap中所述Key值对应的Value值是否相同,如果相同,则判断所述Key值对应的数据未发生修改;如果不同,则判断所述Key值对应的数据记录为修改记录。可选地,所述判断所述Key值对应的数据记录产生了变更,包括:若所述第二HashMap中不存在所述第一HashMap遍历到的Key值,则判断所述Key值对应的数据记录为删除记录;若所述第一HashMap中不存在所述第二HashMap遍历到的Key值,则判断所述Key值对应的数据记录为新增记录。可选地,在判断所述Key值对应的数据记录为删除记录之后,还包括:将所述Key值对应的Value值添加到用于保存删除记录的数组中,并将所述保存删除记录的数组更新到数据库中;在判断所述Key值对应的数据记录为新增记录之后,还包括:将所述Key值对应的Value值添加到用于保存新增记录的数组中,并将所述保存新增记录的数组更新到数据库中。可选地,在判断所述Key值对应的数据记录为修改记录之后,还包括:将所述Key值对应的Value值添加到用于保存修改记录的数组中,并将所述保存修改记录的数组更新到数据库中。本专利技术还提供了一种数据对比的装置,包括:存储模块和判断模块;其中,所述存储模块,用于保存原始数据到第一HashMap中,保存处理后的数据到第二HashMap中;所述判断模块,用于分别遍历所述第一HashMap和所述第二HashMap中的Key值,并查找对方是否存在所述Key值,如果不存在,则判断所述Key值对应的数据记录产生了变更;如果存在,判断所述第一HashMap中所述Key值对应的Value值和所述第二HashMap中所述Key值对应的Value值是否相同,如果相同,则判断所述Key值对应的数据未发生修改;如果不同,则判断所述Key值对应的数据记录为修改记录。可选地,所述判断模块包括:遍历单元,查找单元,删除判断单元,新增判断单元,修改判断单元;其中,所述遍历单元,用于遍历所述第一HashMap和所述第二HashMap中的Key值;所述查找单元,用于查找对方是否存在所述Key值;所述删除判断单元,用于若所述第二HashMap中不存在所述第一HashMap遍历到的Key值,则判断所述Key值对应的数据记录为删除记录;所述新增判断单元,用于若所述第一HashMap中不存在所述第二HashMap遍历到的Key值,则判断所述Key值对应的数据记录为新增记录;所述修改判断单元,用于若对方存在所述Key值,判断所述第一HashMap中所述Key值对应的Value值和所述第二HashMap中所述Key值对应的Value值是否相同,如果相同,则判断所述Key值对应的数据未发生修改;如果不同,则判断所述Key值对应的数据记录为修改记录。可选地,所述装置还包括:删除记录保存模块,新增记录保存模块和修改记录保存模块;其中,所述删除记录保存模块,用于在判断所述Key值对应的数据记录为删除记录之后,将所述Key值对应的Value值添加到用于保存删除记录的数组中;所述新增记录保存模块,用于在判断所述Key值对应的数据记录为新增记录之后,将所述Key值对应的Value值添加到用于保存新增记录的数组中;所述修改记录保存模块,用于在判断所述Key值对应的数据记录为修改记录之后,将所述Key值对应的Value值添加到用于保存修改记录的数组中。可选地,所述装置还包括:持久化模块,用于将所述保存删除记录的数组、保存新增记录的数组和保存修改记录的数组更新到数据库中。本专利技术所提供的数据对比的方法及装置,将原始数据和处理后的数据分别保存在两个HashMap中,分别遍历这两个HashMap中的Key值,并查找对方是否存在遍历到的Key值,根据查找结果判断数据的变更情况。采用HashMap存储数据,每条数据记录都对应一个唯一标识Key值,而所述Key值可以直接在HashMap中快速获取,在遍历第一HashMap中的Key值,并在第二HashMap中对其进行查找时,查找的过程是不需要进行循环的,在遍历第二HashMap中的Key值,并在第一HashMap中对其进行查找时,与之相同,因此本专利技术的方法及装置仅仅用了两个单重循环而非双重循环,因而缩短了数据处理的时间,提高了数据处理的效率。附图说明为了更清楚的说明本专利技术实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例所提供的数据对比的方法的流程图;图2为本专利技术实施例所提供的数据对比的方法的具体实施方式的流程图;图3为本专利技术实施例所提供的数据对比的装置的结构框图。具体实施方式本专利技术的核心是提供一种数据对比的方法及装置,以解决数据处理的时间较长,数据处理的效率低下的问题。为了使本
的人员更好地理解本专利技术方案,下面结合附图和具体实施方式对本专利技术作进一步的详细说明。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,图1为本专利技术实施例所提供的数据对比的方法的流程图,包括以下步骤:步骤101:保存原始数据到第一HashMap中,保存处理后的数据到第二HashMap中。对数据进行处理后有的数据会产生变更,有的数据不会产生变更,为了找出变更的数据,先声明两个HashMap,然后将原始数据和处理后的数据分别保存在两个HashMap中。HashMap中存放的是键-值对Key-Value,将数据保存在HashMap中,Key值为数据记录的唯一本文档来自技高网
...
一种数据对比的方法及装置

【技术保护点】
一种数据对比的方法,其特征在于,包括:保存原始数据到第一HashMap中,保存处理后的数据到第二HashMap中;分别遍历所述第一HashMap和所述第二HashMap中的Key值,并查找对方是否存在所述Key值,如果不存在,则判断所述Key值对应的数据记录产生了变更;如果存在,判断所述第一HashMap中所述Key值对应的Value值和所述第二HashMap中所述Key值对应的Value值是否相同,如果相同,则判断所述Key值对应的数据未发生修改;如果不同,则判断所述Key值对应的数据记录为修改记录。

【技术特征摘要】
1.一种数据对比的方法,其特征在于,包括:保存原始数据到第一HashMap中,保存处理后的数据到第二HashMap中;分别遍历所述第一HashMap和所述第二HashMap中的Key值,并查找对方是否存在所述Key值,如果不存在,则判断所述Key值对应的数据记录产生了变更;如果存在,判断所述第一HashMap中所述Key值对应的Value值和所述第二HashMap中所述Key值对应的Value值是否相同,如果相同,则判断所述Key值对应的数据未发生修改;如果不同,则判断所述Key值对应的数据记录为修改记录。2.如权利要求1所述的方法,其特征在于,所述判断所述Key值对应的数据记录产生了变更,包括:若所述第二HashMap中不存在所述第一HashMap遍历到的Key值,则判断所述Key值对应的数据记录为删除记录;若所述第一HashMap中不存在所述第二HashMap遍历到的Key值,则判断所述Key值对应的数据记录为新增记录。3.如权利要求2所述的方法,其特征在于,在判断所述Key值对应的数据记录为删除记录之后,还包括:将所述Key值对应的Value值添加到用于保存删除记录的数组中,并将所述保存删除记录的数组更新到数据库中;在判断所述Key值对应的数据记录为新增记录之后,还包括:将所述Key值对应的Value值添加到用于保存新增记录的数组中,并将所述保存新增记录的数组更新到数据库中。4.如权利要求1所述的方法,其特征在于,在判断所述Key值对应的数据记录为修改记录之后,还包括:将所述Key值对应的Value值添加到用于保存修改记录的数组中,并将所述保存修改记录的数组更新到数据库中。5.一种数据对比的装置,其特征在于,包括:存储模块和判断模块;其中,所述存储模块,用于保存原始数据到第一HashMap中,保存处理后的数据到第二HashMap中;所述判断模块,用于分别遍历所述第一HashMap和所述第二HashMap中的Key值,并查找对方是否存在所述Key值,如果不存在,则判断所述Key值对应的数据记录产生了...

【专利技术属性】
技术研发人员:郭坤
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1