一种动态配置字段转换方法、系统、设备、介质及产品与流程
- 国知局
- 2024-11-19 09:49:32
本申请涉及字段转换领域,特别是涉及一种动态配置字段转换方法、系统、设备、介质及产品。
背景技术:
1、目前字段转换比较主流的技术方式是,在静态代码中维护应用内部字段与应用外部字段之间的映射关系,但此方式存在以下问题,一方面是对接新的外部应用时,通常需要开发新的代码来建立字段映射关系,而从业务属性方面来看这些代码绝大多数都是相似的或完全相同的,导致大量的代码研发都属于重复劳动;另一方面,当外部应用字段发生变更时,内部应用的代码也会随之发生变更,这非常不利于系统的快速迭代和业务测试。
技术实现思路
1、本申请的目的是提供一种动态配置字段转换方法、系统、设备、介质及产品,以降低应用系统的复杂度和容错率。
2、为实现上述目的,本申请提供了如下方案:
3、第一方面,本申请提供了一种动态配置字段转换方法,包括:
4、获取外部应用系统的输入数据和内部应用系统的接口编号;
5、根据所述输入数据和所述接口编号,确定多个字段转换规则;所述字段转换规则包括源字段名称、目标字段名称、转换前置条件、转换优先级和规则是否开启;
6、对所述字段转换规则进行预处理,得到字段转换规则的对象模型;
7、基于所述字段转换规则的对象模型和所述输入数据,利用java动态字节码技术,生成多个规则单元类文件,并形成规则单元链;所述规则单元类文件包括字段属性和可执行方法;字段属性包括源字段名称、目标字段名称和转换前置条件;所述可执行方法包括字段转换方法和前置条件判断方法;
8、对所述输入数据进行扁平化处理,得到扁平化数据;
9、基于所述规则单元链,以递归的方式对所述扁平化数据进行转换,得到转换后的输入数据,并输入至所述内部应用系统。
10、可选地,对所述字段转换规则进行预处理,得到字段转换规则的对象模型,具体包括:
11、基于所述转换优先级,对所有所述字段转换规则进行优先级排序,得到排序后的字段转换规则;
12、将所述排序后的字段转换规则中未开启的规则进行过滤删除,得到处理后的字段转换规则;
13、对所述处理后的字段转换规则进行结构化数据解析,得到字段转换规则的对象模型。
14、可选地,对所述处理后的字段转换规则进行结构化数据解析,得到字段转换规则的对象模型,具体包括:
15、利用java语言中类的概念,定义结构化数据对象模型;
16、利用json序列化技术,将所述处理后的字段转换规则转换为包含键值对的json结构数据;
17、提取所述json结构数据中每个字段转换规则所需的属性,填充到结构化数据对象模型中,得到字段转换规则的对象模型。
18、可选地,基于所述字段转换规则的对象模型和所述输入数据,利用java动态字节码技术,生成多个规则单元类文件,并形成规则单元链,具体包括:
19、基于所述字段转换规则的对象模型和所述输入数据,利用java动态字节码技术,生成多个规则单元类文件;
20、多个所述规则单元类文件,按照预先配置的优先级顺序,形成规则单元链。
21、可选地,基于所述规则单元链,以递归的方式对所述扁平化数据进行转换,得到转换后的输入数据,具体包括:
22、判断是否满足转换前置条件;
23、若是,则依次触发所述规则单元链中的规则单元类文件,对所述扁平化数据进行转换,得到处理后的输入数据;其中,转换过程中,下一规则单元类文件对基于上一规则单元类文件转换后的扁平化数据进行转换。
24、第二方面,本申请提供了一种动态配置字段转换系统,所述动态配置字段转换系统用于执行上述的动态配置字段转换方法,所述的动态配置字段转换系统包括:数据库规则配置解析模块、字段转换规则引擎模块和字段转换规则模块;所述字段转换规则模块包括多个字段转换规则单元;
25、所述数据库规则配置解析模块用于:
26、获取外部应用系统的输入数据和内部应用系统的接口编号;
27、根据所述输入数据和所述接口编号,确定多个字段转换规则;所述字段转换规则包括源字段名称、目标字段名称、转换前置条件、转换优先级和规则是否开启;
28、对所述字段转换规则进行预处理,得到字段转换规则的对象模型;
29、所述字段转换规则引擎模块用于基于所述字段转换规则的对象模型和所述输入数据,利用java动态字节码技术,生成多个规则单元类文件,并形成规则单元链;所述规则单元类文件包括字段属性和可执行方法;字段属性包括源字段名称、目标字段名称和转换前置条件;所述可执行方法包括字段转换方法和前置条件判断方法;
30、所述字段转换规则模块用于:
31、对所述输入数据进行扁平化处理,得到扁平化数据;
32、基于所述规则单元链,以递归的方式对所述扁平化数据进行转换,得到转换后的输入数据,并输入至所述内部应用系统。
33、第三方面,本申请提供了一种计算机设备,包括:存储器、处理器以存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序以实现上述中任一项所述的动态配置字段转换方法。
34、第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述中任一项所述的动态配置字段转换方法。
35、第五方面,本申请提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述中任一项所述的动态配置字段转换方法。
36、根据本申请提供的具体实施例,本申请公开了以下技术效果:
37、本申请提供了一种动态配置字段转换方法、系统、设备、介质及产品,通过获取外部应用系统的输入数据和内部应用系统的接口编号;根据输入数据和接口编号,确定多个字段转换规则;对字段转换规则进行预处理,得到字段转换规则的对象模型;基于字段转换规则的对象模型和输入数据,利用java动态字节码技术,生成多个规则单元类文件,并形成规则单元链;对输入数据进行扁平化处理,得到扁平化数据;基于规则单元链,以递归的方式对扁平化数据进行转换,得到转换后的输入数据,并输入至所述内部应用系统。本申请降低了应用系统的复杂度和容错率。
技术特征:1.一种动态配置字段转换方法,其特征在于,包括:
2.根据权利要求1所述的动态配置字段转换方法,其特征在于,对所述字段转换规则进行预处理,得到字段转换规则的对象模型,具体包括:
3.根据权利要求2所述的动态配置字段转换方法,其特征在于,对所述处理后的字段转换规则进行结构化数据解析,得到字段转换规则的对象模型,具体包括:
4.根据权利要求1所述的动态配置字段转换方法,其特征在于,基于所述字段转换规则的对象模型和所述输入数据,利用java动态字节码技术,生成多个规则单元类文件,并形成规则单元链,具体包括:
5.根据权利要求1所述的动态配置字段转换方法,其特征在于,基于所述规则单元链,以递归的方式对所述扁平化数据进行转换,得到转换后的输入数据,具体包括:
6.一种动态配置字段转换系统,其特征在于,所述动态配置字段转换系统用于执行权利要求1-5所述的动态配置字段转换方法,所述的动态配置字段转换系统包括:数据库规则配置解析模块、字段转换规则引擎模块和字段转换规则模块;所述字段转换规则模块包括多个字段转换规则单元;
7.一种计算机设备,包括:存储器、处理器以存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-5中任一项所述的动态配置字段转换方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-5中任一项所述的动态配置字段转换方法。
9.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-5中任一项所述的动态配置字段转换方法。
技术总结本申请公开了一种动态配置字段转换方法、系统、设备、介质及产品,涉及字段转换领域,通过获取外部应用系统的输入数据和内部应用系统的接口编号;根据输入数据和接口编号,确定多个字段转换规则;对字段转换规则进行预处理,得到字段转换规则的对象模型;基于字段转换规则的对象模型和输入数据,利用Java动态字节码技术,生成多个规则单元类文件,并形成规则单元链;对输入数据进行扁平化处理,得到扁平化数据;基于规则单元链,以递归的方式对扁平化数据进行转换,得到转换后的输入数据,并输入至所述内部应用系统。本申请降低了应用系统的复杂度和容错率。技术研发人员:张顺晨,蒋琦洪,周纬,黄国珉受保护的技术使用者:上海欧冶金诚信息服务股份有限公司技术研发日:技术公布日:2024/11/14本文地址:https://www.jishuxx.com/zhuanli/20241118/330373.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。