[发明专利]对象序列化的方法及装置有效
申请号: | 201510881415.9 | 申请日: | 2015-12-03 |
公开(公告)号: | CN106843819B | 公开(公告)日: | 2020-10-09 |
发明(设计)人: | 陈国兴 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448 |
代理公司: | 北京鼎佳达知识产权代理事务所(普通合伙) 11348 | 代理人: | 王伟锋;刘铁生 |
地址: | 100083 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 对象 序列 方法 装置 | ||
本发明公开了一种对象序列化的方法及装置,涉及计算机技术领域,主要目的在于解决对序列化对象类型的限制,以及在反序列化时需显示指定反序列对象类型的问题。本发明的主要技术方案为:当需要获取序列化的给定对象时,获取所述给定对象对应的上下文对象的序列化内容;该上下文对象为序列化该给定对象时创建的对象,其至少包含该给定对象的类型和序列化内容;对该上下文对象的序列化内容进行反序列化得到该上下文对象;解析该上下文对象,获取该给定对象的类型和序列化内容;根据该给定对象的类型对该给定对象的序列化内容进行反序列化得到该给定对象。本发明主要用于对象序列化反序列化的过程中。
技术领域
本发明涉及计算机技术领域,尤其涉及一种对象序列化的方法及装置。
背景技术
序列化(Serialization)是将对象的状态信息转换为可以存储或传输形式的过程。在将对象序列化期间,将对象的当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。
在程序开发中经常需要对某些对象序列化和反序列化,目前常用的序列化反序列化方法有json序列化反序列化、xml序列化反序列化和二进制序列化反序列化等,但是它们都有一些限制或使用上的不方便。如json序列化反序列化和xml序列化反序列化在反序列化的时候需要指定反序列化对象的类型,二进制序列化反序列化需要实现指定的接口。
发明内容
有鉴于此,本发明提供一种对象序列化的方法及装置,主要目的在于解决对序列化对象类型的限制,以及在反序列化时需显示指定反序列对象类型的问题。
为达到上述目的,本发明提供如下的技术方案:
一方面,本发明提供一种对象序列化的方法,包括:
当需要获取序列化的给定对象时,获取所述给定对象对应的上下文对象的序列化内容;所述上下文对象为序列化所述给定对象时创建的对象,其至少包含所述给定对象的类型和所述给定对象的序列化内容;
对所述上下文对象的序列化内容进行反序列化得到所述上下文对象;
解析所述上下文对象,获取所述给定对象的类型和所述给定对象的序列化内容;
根据所述给定对象的类型对所述给定对象的序列化内容进行反序列化得到所述给定对象。
另一方面,本发明还提供一种对象序列化的装置,包括:
获取单元,用于当需要获取序列化的给定对象时,获取所述给定对象对应的上下文对象的序列化内容;所述上下文对象为序列化所述给定对象时创建的对象,其至少包含所述给定对象的类型和所述给定对象的序列化内容;
第一序列化反序列化单元,用于对所述上下文对象的序列化内容进行反序列化得到所述上下文对象;
解析单元,用于解析所述上下文对象,获取所述给定对象的类型和所述给定对象的序列化内容;
第二序列化反序列化单元,用于根据所述给定对象的类型对所述给定对象的序列化内容进行反序列化得到所述给定对象。
本发明提供的对象序列化的方法及装置,当需要从序列化的内容中获取对象时,只需要从序列化给对象时创建的上下文对象中获取对象的类型和序列化后的对象内容,就可以根据所述给定对象的类型对所述序列化后的对象内容进行反序列化得到所述给定对象。与现有技术相比,由于创建的序列化上下文对象中包含序列化反序列化所需要的类型信息,不需要再单独提供类型信息,对要进行序列化的对象没有任何限制要求,同时在反序列化时也无需指定类型。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510881415.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:包装袋(“如丝斯乎”VI设计4)
- 下一篇:包装袋(肠衣膜)