System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及系统开发以及金融科技,涉及一种业务代码开发方法、装置、计算机设备及存储介质。
技术介绍
1、在金融科技
中,由于不同地域、不同民族、不同圈层的人风险需求不同,所以保险业务系统在实际开发过程中业务人员常常需要基于客户的实际情况定制一些个性化业务,这些个性化业务通常需要基于通用业务实现,随着金融保险领域市场的不断发展,保险系统的个性化业务日益增多,个性化业务代码的不断增加,个性化业务代码与通用业务代码之间耦合度也愈发愈高,保险公司内部的系统也会沉淀几万行到几十万行用不到的代码,导致系统维护难度和开发成本也越来越高。
2、现有技术通常采用模块化代码的方式处理保险业务系统的个性化业务开发,通过需求分析,将系统划分为多个通用模块,并在通用模块内设置若干业务接口,每个业务接口对应一种个性化业务或者通用业务,考虑模块之间的业务接口和依赖关系,确保它们能够协同工作。
3、然而传统模块化代码的方式会因为开发人员业务能力的参差不齐,导致模块划分不当,从而使功能上关联紧密的部分被划分到不同的模块中,导致这些模块之间存在较高的依赖性,而且当多个模块共享相同的全局变量或状态时,它们之间的耦合性会增加,一个模块的修改可能会对其他模块产生意外影响。
技术实现思路
1、本申请实施例的目的在于提出一种业务代码开发方法、装置、计算机设备及存储介质,以解决保险系统中个性化业务与通用业务高度集成引发的耦合度过高,导致系统代码过于冗余不利于维护的问题。
2、为了解决上述技
3、获取原始业务代码以及业务定制需求指令;
4、对所述原始业务代码进行定向分离处理,得到通用业务代码块以及个性化业务代码块;
5、对所述个性化业务代码块进行groovy编码处理,得到可执行groovy脚本;
6、基于所述业务定制需求指令选取所述可执行groovy脚本以及所述通用业务代码块进行配置组合,得到目标业务接口;
7、进一步的,所述原始业务代码包括多个业务接口,每个业务接口带有对应的代码注释,所述对所述原始业务代码进行定向分离处理,得到通用业务代码块以及个性化业务代码块的步骤,具体包括:
8、获取每个业务接口的业务文档;
9、对所述业务接口的代码注释进行文本预处理,得到注释文本特征;
10、基于所述注释文本特征对所述业务文档进行词频-逆文档频率处理,得到目标业务接口权重值;
11、若所述目标业务接口权重值大于预设的权重阈值,则将所述业务接口标记为通用业务接口;
12、若所述目标业务接口权重值小于预设的权重阈值,则将所述业务接口标记为个性化业务接口;
13、将所述通用业务接口从所述原始业务代码分离得到所述通用业务代码块,并将所述个性化业务接口从所述原始业务代码分离得到所述个性化业务代码块;
14、进一步的,所述基于所述注释文本特征对所述业务文档进行词频-逆文档频率处理,得到目标业务接口权重值的步骤,具体包括:
15、将所述注释文本特征对所述每个业务接口的业务文档逐一进行所述词频-逆文档频率处理,得到所述每个业务接口的业务接口权重值;
16、将所述每个业务接口的业务接口权重值进行加权处理,得到所述目标业务接口权重值;
17、进一步的,所述对所述个性化业务代码块进行groovy编码处理,得到可执行groovy脚本的步骤,具体包括:
18、基于所述个性化业务代码块进行抽象语法树生成处理,得到个性化业务逻辑的抽像语法树;
19、对所述个性化业务逻辑的抽像语法树进行遍历解析处理,得到目标个性化业务逻辑;
20、基于所述目标个性化业务逻辑进行groovy编码处理,得到groovy代码块;
21、将所述groovy代码块封装至groovy文件,得到所述可执行groovy脚本;
22、进一步的,所述业务定制需求指令包括业务定制需求方案,所述基于所述业务定制需求指令选取所述可执行groovy脚本以及所述通用业务代码块进行配置组合,得到目标业务接口的步骤,具体包括:
23、通过所述业务定制需求方案配置所述可执行groovy脚本,得到初始可执行脚本;
24、通过所述业务定制需求方案选取出所述通用业务代码块,并通过groovy引擎与所述初始可执行脚本进行结合,得到目标业务接口;
25、进一步的,所述通过所述业务定制需求方案配置所述可执行groovy脚本,得到初始可执行脚本的步骤,具体包括:
26、基于所述业务定制需求方案确定配置化服务组件;
27、将所述配置化服务组件部署在所述可执行groovy脚本,得到所述初始可执行脚本;
28、进一步的,在所述基于所述业务定制需求指令选取所述可执行groovy脚本以及所述通用业务代码块进行配置组合,得到目标业务接口的步骤之后,还包括:
29、获取所述目标业务接口的url地址以及业务请求参数;
30、对所述业务请求参数进行参数转换处理,得到目标业务参数;
31、将所述目标业务参数指定到所述url地址中,返回请求结果。
32、为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
33、一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现所述的业务代码开发方法的步骤。
34、为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
35、一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现所述的业务代码开发方法的步骤。
36、与现有技术相比,本申请实施例主要有以下有益效果:
37、本实施例通过业务定制需求指令对原始业务代码定向分离处理得到通用业务代码块以及个性化业务代码块,将个性化业务代码块解析封装成可执行groovy脚本,再根据业务定制需求指令选择可执行groovy脚本的配置,通过将可执行groovy脚本与通用业务代码块进行配置组合,得到目标业务接口,本实施例利用代码层面把个性化逻辑物理隔离在groovy文件中,使得个性化逻辑不会相互影响,也不会对稳定的业务逻辑造成影响,既保障了主体业务的稳定,也支持了个性化业务的发展,解决了保险业务中个性化业务与通用业务高度集成,耦合度过高,导致系统代码过于冗余不利于维护的问题。
本文档来自技高网...【技术保护点】
1.一种业务代码开发方法,其特征在于,包括下述步骤:
2.根据权利要求1所述的业务代码开发方法,其特征在于,所述原始业务代码包括多个业务接口,每个业务接口带有对应的代码注释,所述对所述原始业务代码进行定向分离处理,得到通用业务代码块以及个性化业务代码块的步骤,具体包括:
3.根据权利要求2所述的业务代码开发方法,其特征在于,所述基于所述注释文本特征对所述业务文档进行词频-逆文档频率处理,得到目标业务接口权重值的步骤,具体包括:
4.根据权利要求1所述的业务代码开发方法,其特征在于,所述对所述个性化业务代码块进行groovy编码处理,得到可执行groovy脚本的步骤,具体包括:
5.根据权利要求1所述的业务代码开发方法,其特征在于,所述业务定制需求指令包括业务定制需求方案,所述基于所述业务定制需求指令选取所述可执行groovy脚本以及所述通用业务代码块进行配置组合,得到目标业务接口的步骤,具体包括:
6.根据权利要求5所述的业务代码开发方法,其特征在于,所述通过所述业务定制需求方案配置所述可执行groovy脚本,得到初始可
7.根据权利要求1所述的业务代码开发方法,其特征在于,在所述基于所述业务定制需求指令选取所述可执行groovy脚本以及所述通用业务代码块进行配置组合,得到目标业务接口的步骤之后,还包括:
8.一种业务代码开发装置,其特征在于,包括:
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述的业务代码开发方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至7中任一项所述的业务代码开发方法的步骤。
...【技术特征摘要】
1.一种业务代码开发方法,其特征在于,包括下述步骤:
2.根据权利要求1所述的业务代码开发方法,其特征在于,所述原始业务代码包括多个业务接口,每个业务接口带有对应的代码注释,所述对所述原始业务代码进行定向分离处理,得到通用业务代码块以及个性化业务代码块的步骤,具体包括:
3.根据权利要求2所述的业务代码开发方法,其特征在于,所述基于所述注释文本特征对所述业务文档进行词频-逆文档频率处理,得到目标业务接口权重值的步骤,具体包括:
4.根据权利要求1所述的业务代码开发方法,其特征在于,所述对所述个性化业务代码块进行groovy编码处理,得到可执行groovy脚本的步骤,具体包括:
5.根据权利要求1所述的业务代码开发方法,其特征在于,所述业务定制需求指令包括业务定制需求方案,所述基于所述业务定制需求指令选取所述可执行groovy脚本以及所述通用业务代码块进行配置组合,得到目标业...
【专利技术属性】
技术研发人员:万玉林,
申请(专利权)人:中国平安财产保险股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。