[发明专利]一种JSON对象解析方法、装置、电子设备及存储介质在审
申请号: | 202111257546.1 | 申请日: | 2021-10-27 |
公开(公告)号: | CN113971029A | 公开(公告)日: | 2022-01-25 |
发明(设计)人: | 李星 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/448 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 项京;孙翠贤 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 json 对象 解析 方法 装置 电子设备 存储 介质 | ||
本发明实施例提供了一种JSON对象解析方法、装置、电子设备及存储介质,涉及计算机技术领域,可以减少解析JSON对象造成的性能损耗。该方法包括:当JSON对象对应的子类中的目标属性被调用时,判断目标属性是否为首次被调用。子类中与JSON对象对应的属性均被标记为指定关键字,指定关键字用于禁止编译器为目标属性自动生成获取函数和赋值函数。如果是首次被调用,则调用基类将通用解析函数添加为目标属性对应的获取函数,并利用通用解析函数从JSON对象的待解析字典中,获取目标属性对应的待解析值,解析待解析值。如果不是首次被调用,则利用目标属性对应的获取函数从目标属性对应的私有属性中,获取目标属性对应的解析后的值。
技术领域
本发明涉及计算机技术领域,特别是涉及一种JSON对象解析方法、装置、电子设备及存储介质。
背景技术
JS对象简谱(JavaScript Object Notation,JSON)是一种轻量级的数据交换格式,可以应用于设备间的数据交互,比如终端与服务器之间可以传输JSON格式的数据。
为了传输JSON格式数据,需预先通过代码编写JSON对象中包括的字段,随着业务的发展,JSON对象中包括的字段也会越来越多。由于在业务的程序迭代过程中,代码由多人协同完成且完成时间跨度大。为了避免因错误删除数据对象的字段而导致程序无法运行,程序员通常选择只为JSON对象增添需要使用的新字段,而不会删除字段。这样,在JSON对象的长期迭代更新过程中将出现冗余字段。
在对JSON对象进行解析时,通常一次性将JSON对象中包括的所有字段进行解析,而JSON对象中可能包括冗余字段,还可能包括当前业务场景中不会用到的字段,所以目前对JSON对象的解析包括一些无效解析,会造成不必要的性能损耗。
发明内容
本申请实施例的目的在于提供一种JSON对象解析方法、装置、电子设备及存储介质,以减少解析JSON对象造成的性能损耗。具体技术方案如下:
在本申请实施的第一方面,提供了一种JSON对象解析方法,包括:
当JSON对象对应的子类中的目标属性被调用时,判断所述目标属性是否为首次被调用;其中,所述子类中与所述JSON对象对应的属性均被标记为指定关键字,所述指定关键字用于禁止编译器为所述目标属性自动生成获取函数和赋值函数;
如果所述目标属性为首次被调用,则调用基类将通用解析函数添加为所述目标属性对应的获取函数,并利用所述通用解析函数从所述JSON对象的待解析字典中,获取所述目标属性对应的待解析值,对所述待解析值进行解析;
如果所述目标属性不是首次被调用,则利用所述目标属性对应的获取函数从所述目标属性对应的私有属性中,获取所述目标属性对应的解析后的值。
在本申请实施的第二方面,还提供了一种JSON对象解析装置,所述装置包括:
判断模块,用于当JSON对象对应的子类中的目标属性被调用时,判断所述目标属性是否为首次被调用;其中,所述子类中与所述JSON对象对应的属性均被标记为指定关键字,所述指定关键字用于禁止编译器为所述目标属性自动生成获取函数和赋值函数;
解析模块,用于如果所述目标属性为首次被调用,则调用基类将通用解析函数添加为所述目标属性对应的获取函数,并利用所述通用解析函数从所述JSON对象的待解析字典中,获取所述目标属性对应的待解析值,对所述待解析值进行解析;
获取模块,用于如果所述目标属性不是首次被调用,则利用所述目标属性对应的获取函数从所述目标属性对应的私有属性中,获取所述目标属性对应的解析后的值。
在本申请实施的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111257546.1/2.html,转载请声明来源钻瓜专利网。