【技术实现步骤摘要】
通用的对象序列化的实现方法
本专利技术属于软件开发和算法领域。
技术介绍
对象序列化技术,是将对象数据转换成另一种持久化数据形式的技术,转换之后的数据形式必须易于存储在外部介质上,或者易于使用网络进行传输。为了使得存储和传输后的数据能够再次变回内存中的对象,这样的转换必须是可逆的。对象序列化技术在数据的传输和存储过程中,引入了对象的抽象,使得这个过程更加直观,使用更加方便,因此对象序列化技术在面向对象的软件系统中使用非常广泛。由于对象序列化技术使用的广泛性,很多的计算机语言都在语言层面,通过标准库的方式,提供对象序列化的功能的支持,Java,C#,Python等等语言莫不如是。C++语言本身并没有在标准库中提供对象序列化的功能,如果需要使用C++语言实现对象序列化,开发者要么自己设计,要么使用第三方库。目前C++中使用比较广泛的对象序列化库包括MFC,boost::serialization等等。MFC库的对象序列化功能无法脱离MFC库单独使用,不具有可移植性,大大限制了它的适用范围,而且MFC库将对象序列化成二进制数据,不具有可读性,也无法进行手工编辑。另外,M ...
【技术保护点】
一种通用的对象序列化的实现方法;其特征在于,包括对象序列化成XML文本内容以及序列化之后的XML文本内容还原成对象。
【技术特征摘要】
1.一种通用的对象序列化的实现方法;其特征在于,包括对象序列化成XML文本内容以及序列化之后的XML文本内容还原成对象;XML标记语言作为对象的外部表示,对象数据有属性和关联两种,属性和关联都是对象的成员变量;对象的关联分为普通关联和引用关联,普通关联指成员变量的类型为类本身,引用关联指成员变量的类型为类指针;在支持通用的对象序列化的实现方法的序列化库中使用ISerialize接口表示可以被序列化和反序列化的对象;所述序列化库包括对象仓库和序列化管理器;对象仓库保存着对象的名称到对象本身的映射,使用对象仓库存储对象来支持引用关联;序列化管理器负责具体的序列化操作,同时存储着类型名到模板对象的映射,模板对象用于在进行反序列的过程中动态创建对象;对象序列化成XML文本内容包括以下步骤:将对象存放于对象仓库中;调用对象,构建对象结构树;序列化管理器将前序遍历对象结构树,对对象结构树的每个节点进行序列化操作,生成XML格式的字符串;...
【专利技术属性】
技术研发人员:朱建云,巩荣海,
申请(专利权)人:上海富欣智能交通控制有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。