[发明专利]一种无层级结构的JSON反序列化方法、装置及存储介质在审

专利信息
申请号: 201910123348.2 申请日: 2019-02-18
公开(公告)号: CN109871519A 公开(公告)日: 2019-06-11
发明(设计)人: 钱玉明 申请(专利权)人: 北京思特奇信息技术股份有限公司
主分类号: G06F17/22 分类号: G06F17/22
代理公司: 北京轻创知识产权代理有限公司 11212 代理人: 杨立
地址: 100089 北京市海淀*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 层级结构 字段 注解 反序列化 存储介质 目标属性 反序列化操作 代码编写 属性分解 属性确定 系统开发 字段添加 复用率 解析
【说明书】:

发明提供了一种无层级结构的JSON反序列化方法、装置及存储介质,所述方法主要包括:通过解析目标JSON字符串,获取所述目标JSON字符串包含的JSON属性和JSON属性值;根据所述目标JSON字符串包含的JSON属性确定Java对象中的目标字段,所述目标字段的字段名称与所述目标JSON字符串包含的JSON属性的属性名称相同;为所述目标字段添加注解属性,并将所述注解属性分解后的属性作为所述目标字段的目标属性;基于所述注解属性给所述目标属性进行赋值。综上所述,通过注解属性,可消除目标JSON字符串反序列化成Java对象的层级结构,实现了无层级结构的JSON字符串反序列化操作,提高了业务侧代码的复用率,使系统开发效率更高,代码编写更简单。

技术领域

本发明涉及互联网技术领域,尤其涉及一种无层级结构的JSON反序列化方法、装置及存储介质。

背景技术

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于JavaScript(StandardECMA-2623rdEdition-December 1999)脚本语言的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)。这些特性使JSON成为理想的数据交换语言。易于用户阅读和编写,同时也易于机器解析和生成。

序列化(Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。上述中的对象(Object)就是客观世界中存在的人、事、物体等实体在计算机逻辑中的映射。反序列化(Deserialization)是与序列化相对的,它将Json字符串形式的数据流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。

现有技术中,大部分编程语言都有对应的JSON解析器,在Java语言中,开源的JSON解析器包括:fastjson、jackjson和gson等,这些解析器都支持把JSON字符串反序列化成用户自定义的JavaBean对象,但都要求用户自定义的Java Bean对象保持和JSON一样的层级,一方面导致在实际的系统开发中,如需使用JSON作为请求入参,经常存在JSON格式层级结构多,JSON嵌套很深,每一层结构都需要编写一个自定义JavaBean对象,代码比较复杂;另一方面,在实际的系统开发中还存在这样的场景,不同的业务逻辑代码,当JSON作为请求入参格式,可能只是调整了某一个参数的层级位置,业务代码获取对象的属性时却需要用到类似getUser(),getName()等方式,业务代码与JSON的层级之间未解耦,业务代码得不到复用。综上所述,现有技术中的JSON字符串反序列化技术存在业务侧代码复用率低,导致系统开发效率低,代码编写复杂的技术问题。

发明内容

本发明实施例提供一种无层级结构的JSON反序列化方法、装置及存储介质,主要旨在解决现有技术中由于JSON字符串反序列化成用户自定义的JavaBean对象,需保持和JSON字符串一样的层级,使业务侧代码复用率低,导致系统开发效率低,代码编写复杂的技术问题。

第一方面,本发明实施例提供了一种无层级结构的JSON反序列化方法,具体包括:

获取目标JSON字符串;

通过解析所述目标JSON字符串,获取所述目标JSON字符串包含的JSON属性和JSON属性值;

根据所述目标JSON字符串包含的JSON属性确定Java对象中的目标字段,所述目标字段的字段名称与所述目标JSON字符串包含的JSON属性的属性名称相同;

为所述目标字段添加注解属性,并将所述注解属性分解后的属性作为所述目标字段的目标属性;

基于所述注解属性给所述目标属性进行赋值。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910123348.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top