【技术实现步骤摘要】
一种序列化方法、反序列化方法及相关设备
本专利技术属于计算机领域,特别涉及一种序列化方法、反序列化方法及相关设备。
技术介绍
对象序列化/反序列化技术广泛应用于计算机领域,大量使用于系统备份、网络 通讯等涉及到数据交换的场景,主要实现将对象串行化为二进制字节流,进而可保存在存 储设备或和其他系统交换数据。 目前主流的序列化技术会将对象的所有属性都进行序列化,无法自定义需要序列 化的属性,在一些经常发生大数据量交换的行业应用中,如电信、金融行业,通常会自定义 通讯格式,并且只需要序列化对象中的部分属性,以达到提高序列化效率,节省传输带宽的 目的,无法直接使用主流的序列化技术。 现有技术中,中国专利(专利号:200910190251)公开了一种对象序列化方法、对 象反序列化方法、装置及系统,描述了对象中属性增减,引起反序列化失败的问题,中国专 利(专利号:201310596703)公开了一种对象序列化方法和装置,描述了序列化结果必须与 目标对象结构严格映射,无法满足灵活的序列化需求的问题,但是都没有解决用户自定义 序列化属性的问题。
技术实现思路
有鉴于此,本专利技术实施例提供了一种序列化方法、反序列化方法及相关设备。 本专利技术的一个目的是提供一种序列化方法,所述序列化方法包括: 在可序列化类为需要序列化的属性添加可序列化注解,将属性标记为可序列化属 性; 对可序列化类,加载类信息及类中所有可序列化属性信息到内存,形成预加载序 列化信息; 根据预加载序列化信息,获取待处理字节序列中所有可序列化属性 ...
【技术保护点】
一种序列化方法,其特征在于,所述序列化方法包括:在类声明文件中对类及其属性声明添加可序列化的注解信息,将普通类标记为可序列化类;在可序列化类为需要序列化的属性添加可序列化注解,将属性标记为可序列化属性;对可序列化类,加载类信息及类中所有可序列化属性信息到内存,形成预加载序列化信息;序列化信息获取实例化对象中需要序列化的属性;根据所述内存中加载的所述序列化信息和属性类型信息对所述实例化对象需要序列化的属性序列化,并将所述实例化对象序列化后的属性值输出至字节序列。
【技术特征摘要】
1. 一种序列化方法,其特征在于,所述序列化方法包括: 在类声明文件中对类及其属性声明添加可序列化的注解信息,将普通类标记为可序列 化类; 在可序列化类为需要序列化的属性添加可序列化注解,将属性标记为可序列化属性; 对可序列化类,加载类信息及类中所有可序列化属性信息到内存,形成预加载序列化 信息; 序列化信息获取实例化对象中需要序列化的属性; 根据所述内存中加载的所述序列化信息和属性类型信息对所述实例化对象需要序列 化的属性序列化,并将所述实例化对象序列化后的属性值输出至字节序列。2. 根据权利要求1所述的方法,其特征在于,在所述获取实例化对象中需要序列化的 属性中,所述方法具体包括: 依次获取实例化对象的需要序列化的属性,并将所述属性按循序排序。3. 根据权利要求1所述的方法,其特征在于,在根据所述内存中加载的所述序列化信 息和属性类型信息对所述实例化对象需要序列化的属性序列化,并将所述实例化对象序列 化后的属性值输出至字节序列中,所述方法具体包括: 根据属性名字预加载的序列化信息缓存中查找对应的序列化信息,根据序列化信息和 属性类型信息,将实例化对象序列化后的属性值格式化输出到字节序列。4. 根据权利要求1所述的方法,其特征在于,在所述将实例化对象序列化后的属性值 格式化输出到字节序列中,所述方法具体包括: 所述将实例化对象序列化后的属性值采用序号、长度或编码的形式格式化输出到字节 序列中。5. -种反序列化方法,其特征在于,所述序列化方法包括: 在类声明文件中对类及其属性声明添加可序列化的注解信息,将普通类标记为可序列 化类; 在可序列化类为需要序列化的属性添加可序列化注解,将属性标记为可序列化属性; 对可序列化类,加载类信息及类中所有可序列化属性信息到内存,形成预加载序列化 信息; 根据预加载序列化信息,获取待处理字节序列中所有可序列化属性,并根据序列化顺 序排序; 获取待处理字节序列的内容; 根据所述内存中加载的所述序列化信息和属性类型信息将所述字节序列中的内容转 换为属性值。6. 根据权利要求5所述的方法,其特征在于,在所述获取实例化对象中需要序列化的 属性中,所述方法具体包括: 依次获取实例化对象的需要序列化的属性,并将所述属性按循序排序。7....
【专利技术属性】
技术研发人员:邓国宇,蓝洪波,
申请(专利权)人:中国建设银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。