版本兼容的数据结构存取方法、计算机装置及存储介质制造方法及图纸

技术编号:19215513 阅读:31 留言:0更新日期:2018-10-20 06:39
本发明专利技术公开了一种版本兼容的数据结构存取方法,包括步骤:根据需要进行保存的数据对象的内容,在所述需要进行保存的数据对象中编译生成属性映射表,该属性映射表包括类属性和属性值,其中,所述类属性结构为通过替归的方式进行编译的MAP键值对和属性值;根据存储的所述数据对象定义数据对象列表,在读取所述数据对象时确定读取的数据对象的类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值,以完成对数据对象的读取。本发明专利技术中的版本兼容的数据结构存取方法可以兼容读取之前或者改变之后的各个版本的数据。本发明专利技术还提供一种计算机装置以及计算机可读存储介质。

【技术实现步骤摘要】
版本兼容的数据结构存取方法、计算机装置及存储介质
本专利技术涉及计算机
,具体涉及一种版本兼容的数据结构存取方法、计算机装置及计算机可读存储介质。
技术介绍
软件版本更叠是一个逐渐且必然的过程,在更叠的过程中总会带来一些软件功能的添加、改动,进而会使新旧版本软件存储管理的数据结构和内容有所差异,但是往往旧版本软件产生的数据信息是很有意义,需要被保留并且可以被使用的,这就要求必须有一套完整的方法保证不同版本之间的数据兼容。目前数据属性变动频繁的数据存储处理中,无法实现老版本无法兼容新版本的数据;而已有的数据兼容方法基本都是给各个版本数据添加一些标识版本的信息,然后在新的版本软件开发过程中通过代码为不同版本数据做转化从而实现数据兼容,但从实际使用效果上来看,上述数据兼容方案使用上并不完美,主要体现在以下方面:1、只能做到新版本兼容旧版本,不能做到不同版本之间的存储读取数据相互兼容;在某些场合完全是有可能出现旧版本的软件使用新版本的数据的;2、需要为每两个版本号维护一个单独的兼容转换方法,若有N个版本,则需要维护2N个转换方法,需要额外的工作,而且当维护的方法很多时工作会变得非常复杂且容易出错;3、必须在每个后续版本存储程序中保留每个历史版本的数据结构信息以及对这些信息的维护,处理性能会有损失,维护代码将逐渐膨胀,若信息丢失或维护代码有遗漏,则导致对老版本数据的兼容失败;4、数据序列化(比如MFC中的CArchive)一般是对数据元素属性的顺序存储,其弊端是无扩展性,例如一个保存好的文件,在数据属性变量更改的软件下无法正常打开。因此,有必要提供一种新的版本兼容的数据结构存取方法来解决上述技术问题。
技术实现思路
本专利技术的主要目的在于提供一种新的版本兼容的数据结构存取方法、计算机装置及存储介质,以解决不同版本软件的数据无法兼容和兼容转换方法复杂的技术问题。为实现上述目的,本专利技术提供一种版本兼容的数据结构存取方法,包括步骤:根据需要进行保存的数据对象的内容,在所述需要进行保存的数据对象中编译生成属性映射表,该属性映射表包括类属性和属性值,其中,所述类属性结构为通过替归的方式进行编译的MAP键值对和属性值;根据存储的所述数据对象定义数据对象列表,在读取所述数据对象时确定读取的数据对象的类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值,以完成对数据对象的读取。进一步地,还包括步骤:定义一个抽象数据类属性类,包括存储接口函数和读取接口函数,用于实现数据对象的属性自身的存储和读取。进一步地,所述属性映射表是基于哈希表的Map接口技术的映射表。进一步地,所述经编译后的需要进行保存的数据对象的内容包括数据对象的类属性、对象的唯一身份识别码、将属性名转换后的唯一的索引以及属性值。进一步地,所述根据需要进行保存的数据对象的内容,在所述需要进行保存的数据对象中编译生成属性映射表的步骤之后,还包括:在对所述需要进行保存的数据对象进行存储时,写入前设置属性表;根据需要进行保存的数据对象的内容,写入对象起始符;根据需要进行保存的数据对象的内容,写入对象结束符。进一步地,所述根据存储的所述数据对象定义数据对象列表,在读取所述数据对象时确定读取的数据对象的类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值,以完成对数据对象的读取的步骤之前,还包括:在对所述需要进行保存的数据对象进行读取时,读取前设置属性表;根据所述对象起始符以及所述对象结束符获取所述数据对象的类属性。进一步地,还包括步骤:定义新的类属性的类型;根据数据对象的内容,写入所述新的类属性和属性值,编译生成对应的属性映射表。进一步地,所述定义数据对象列表,确定读取的数据对象的类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值,以完成对数据对象的读取的步骤,具体包括:根据存储的所述数据对象定义数据对象列表,在读取所述数据对象时确定读取的数据对象的数量和类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值;根据读取的所述数据对象的属性映射表中的属性值,完成对数据对象的读取。本专利技术还提供一种计算机装置,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一项所述的版本兼容的数据结构存取方法的步骤。本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的版本兼容的数据结构存取方法的步骤。在本专利技术的技术方案中,通过根据需要进行保存的数据对象的内容,在所述需要进行保存的数据对象中编译生成属性映射表,该属性映射表包括类属性和属性值,其中,所述类属性结构为通过替归的方式进行编译的MAP键值对和属性值;然后根据存储的所述数据对象定义数据对象列表,在读取所述数据对象时确定读取的数据对象的类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值,以完成对数据对象的读取。本专利技术中的版本兼容的数据结构存取方法可以兼容读取之前或者改变之后的各个版本的数据,利用面向对象属性映射表的技术,实现对异构对象数据的存取,并且无需版本区分,系统经根据映射表的属性进行数据的存储,每种数据类型自行实现存取操作,无需预先定义数据类型,程序员新定义的属性类只需继承同样的基类即可。附图说明图1为本专利技术一实施例中的版本兼容的数据结构存取方法的流程图;图2为图1中步骤S20的子流程图;图3为本专利技术另一实施例中的版本兼容的数据结构存取方法的流程图;图4为本专利技术又一实施例中的版本兼容的数据结构存取方法的流程图;图5为本专利技术再一实施例中的版本兼容的数据结构存取方法的流程图;图6为本专利技术一实施例中的计算机装置的结构示意图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明,本专利技术实施例中所有方向性指示(诸如上、下、左、右、前、后、横向、径向、水平、垂直……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。另外,在本专利技术中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本专利技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。在本专利技术中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本专利技术中的具体本文档来自技高网
...

【技术保护点】
1.一种版本兼容的数据结构存取方法,其特征在于,包括步骤:根据需要进行保存的数据对象的内容,在所述需要进行保存的数据对象中编译生成属性映射表,该属性映射表包括类属性和属性值,其中,所述类属性结构为通过替归的方式进行编译的MAP键值对和属性值;根据存储的所述数据对象定义数据对象列表,在读取所述数据对象时确定读取的数据对象的类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值,以完成对数据对象的读取。

【技术特征摘要】
1.一种版本兼容的数据结构存取方法,其特征在于,包括步骤:根据需要进行保存的数据对象的内容,在所述需要进行保存的数据对象中编译生成属性映射表,该属性映射表包括类属性和属性值,其中,所述类属性结构为通过替归的方式进行编译的MAP键值对和属性值;根据存储的所述数据对象定义数据对象列表,在读取所述数据对象时确定读取的数据对象的类属性,根据数据对象的类属性读取不同数据对象的属性映射表中的属性值,以完成对数据对象的读取。2.根据权利要求1所述的版本兼容的数据结构存取方法,其特征在于,还包括步骤:定义一个抽象数据类属性类,包括存储接口函数和读取接口函数,用于实现数据对象的属性自身的存储和读取。3.根据权利要求1所述的版本兼容的数据结构存取方法,其特征在于,所述属性映射表是基于哈希表的Map接口技术的映射表。4.根据权利要求1所述的版本兼容的数据结构存取方法,其特征在于,所述经编译后的需要进行保存的数据对象的内容包括数据对象的类属性、对象的唯一身份识别码、将属性名转换后的唯一的索引以及属性值。5.根据权利要求1所述的版本兼容的数据结构存取方法,其特征在于,所述根据需要进行保存的数据对象的内容,在所述需要进行保存的数据对象中编译生成属性映射表的步骤之后,还包括:在对所述需要进行保存的数据对象进行存储时,写入前设置属性表;根据需要进行保存的数据对象的内容,写入对象起始符;根据需要进行保存的数据对象的内容,写入对象结束符。6.根据权利要求5所述的版本兼容的数据结构存取方法,其特征在于,所述根据存...

【专利技术属性】
技术研发人员:唐国富陈远征李瑞滔
申请(专利权)人:长沙八思量信息技术有限公司
类型:发明
国别省市:湖南,43

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

1