[发明专利]一种基于aviator数据结构之间相互转换方法在审
申请号: | 202110413870.1 | 申请日: | 2021-04-16 |
公开(公告)号: | CN112948479A | 公开(公告)日: | 2021-06-11 |
发明(设计)人: | 邵健锋;朱国全;林鉴 | 申请(专利权)人: | 深圳市今天国际物流技术股份有限公司 |
主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F16/28 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518000 广东省深圳市龙岗*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 aviator 数据结构 之间 相互 转换 方法 | ||
1.一种基于aviator数据结构之间相互转换方法,为了解决数据接口对接时,接口间的数据格式与数据结构不匹配,需要人为进行定制开发的问题,其特征在于,在支持的数据格式中,任何数据结构都能通过映射进行字段映射与数据处理,包括以下步骤实现:
S1:确定源数据的数据格式与数据结构,数据格式为json,xml,yml等常见的数据格式;
S2:确定目标数据的数据格式与数据结构,数据格式为步骤S1中提到的数据格式中一种;
S3:对目标数据进行反向规则生成,解析出目标数据的数据结构;
S4:将解析出来的目标数据字段列在界面中,等待用户配置各字段与源数据结构中的字段对应关系;
S5:其中$source用来代表目标数据本身,可以通过$source.字段名称来引用源数据中的字段,进行映射;
S6:映射完成后,在数据转换中,首先将$source和目标数据作为键值对,放入环境变量中;
S7:从目标数据的根开始,逐层遍历数据中的各个属性,每个属性的类型有两种,一种为数组,一种为对象;
S8:如果属性为数组,则进行循环,遍历数组中的每一个对象,同时在环境变量中将遍历中的当前对象赋值给$this环境变量,并判断条件是否满足,如果不满足则跳过当前对象,如果满足则开始遍历当前的对象或数组,重复S8-S10的步骤;
S9:如果属性为对象,遍历对象中的每一属性,并判断条件是否满足,如果不满足则跳过当前对象,如果满足则开始遍历对象中的属性,重复S8-S10的步骤;
S10:如果属性不是数据也不是对象,即为最终存储值的属性,判断条件是否满足,如果不满足则跳过当前属性,如果满足则通过用户配置的映射进行解析,获得最终值;
S11:将每一步解析得到的值,根据层级组织起来,得到最后的目标数据结构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市今天国际物流技术股份有限公司,未经深圳市今天国际物流技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110413870.1/1.html,转载请声明来源钻瓜专利网。