规则校验方法、装置、电子装置和存储介质制造方法及图纸

技术编号:30435561 阅读:15 留言:0更新日期:2021-10-24 17:35
本申请涉及一种规则校验方法,其中,该规则校验方法包括:获取规则校验指令;基于规则校验指令,获取待校验规则;基于待校验规则的复杂程度将待校验规则写入预设规则运行语言中,预设规则运行语言包括Groovy动态语言以及MVEL表达式语言;获取待校验规则对应的校验变量,将校验变量输入到预设规则运行语言中,运行被写入待校验规则的预设规则运行语言,并获取运行结果,对运行结果进行校验,并对校验未通过的校验规则进行拦截和/或报警。通过本申请,解决了相关技术中存在对于不同种类规则的校验灵活性较差的问题,实现了可以基于待校验规则配置对应的规则运行语言,提高了对规则校验的灵活性。验的灵活性。验的灵活性。

【技术实现步骤摘要】
规则校验方法、装置、电子装置和存储介质


[0001]本申请涉及数据处理领域,特别是涉及规则校验方法、装置、电子装置和存储介质。

技术介绍

[0002]随着平台业务的不断发展,业务复杂度以及业务数据量的增高,业务数据出现异常的情况也逐渐增多,根据此,则需要安排对业务数据进行一定的校验,其中,对于业务规则的校验尤为重要,需要提供一种可以根据动态规则主动拦截、或推送给下游系统的方法。
[0003]当前技术中对于业务规则校验采用的方法都是采用单一规则语言对于基础变量的规则校验,无论规则简单还是复杂,都需要统一进行处理,每次对于规则的校验都需要修改对应的语言代码,灵活性较差,导致校验规则手段过于复杂,也无法保证对数量较多规则校验时的校验效率,针对相关技术中存在对于不同种类规则的校验灵活性较差的问题,目前还没有提出有效的解决方案。

技术实现思路

[0004]在本实施例中提供了一种规则校验方法、装置、电子装置和存储介质,以解决相关技术中存在对于不同种类规则的校验灵活性较差的问题。
[0005]第一个方面,在本实施例中提供了一种规则校验方法,包括:获取规则校验指令,并基于所述规则校验指令,获取待校验规则;基于所述待校验规则的复杂程度将所述待校验规则写入预设规则运行语言中,所述预设规则运行语言包括Groovy动态语言以及MVEL表达式语言;获取所述待校验规则对应的校验变量,将所述校验变量输入到所述预设规则运行语言中,运行被写入所述待校验规则的所述预设规则运行语言,并获取运行结果;对所述运行结果进行校验,并对校验未通过的所述校验规则进行拦截和/或报警。
[0006]在另一个实施例中,所述基于所述规则校验指令,获取待校验规则包括:获取所述规则校验指令的源地址,基于所述源地址获取对应的待校验规则,所述待校验规则基于所述源地址保存在数据库中。
[0007]在其中一个实施例中,所述基于所述待校验规则的复杂程度将所述待校验规则写入预设规则运行语言中包括:将所述待校验规则的字符复杂度与预设复杂度进行比对;若所述字符复杂度大于所述预设复杂度,则将所述待校验规则写入到所述Groovy动态语言中;若所述字符复杂度小于所述预设复杂度,则将所述待校验规则写入到所述MVEL表达式语言中。
[0008]在另一个实施例中,所述获取所述待校验规则对应的校验变量前还包括:基于预设参数匹配对应的预设变量属性,作为所述校验变量的所述变量属性,所述变量属性用于获取对应的所述校验变量;或;获取业务接口中的参数数值,基于所述参数数值匹配对应的预设变量属性,作为所述校验变量的所述变量属性。
[0009]在其中一个实施例中,所述获取所述待校验规则对应的校验变量包括:基于所述
待校验规则,获取所述待校验规则对应的变量属性,通过反射或dubbo泛化调用获取所述变量属性对应的所述校验变量。
[0010]在另一个实施例中,所述运行被写入所述待校验规则的所述预设规则运行语言包括:基于所述预设规则运行语言获取对应的语言运行引擎,并基于所述语言运行引擎运行所述被写入所述待校验规则的所述预设规则运行语言。
[0011]在其中一个实施例中,所述对所述运行结果进行校验,并对校验未通过的所述校验规则进行拦截和/或报警:获取所述校验变量对应的预设结果,所述预设结果包括预设阈值;将所述预设结果与所述运行结果进行比对,若所述运行结果在所述预设阈值范围内,则校验通过,若所述运行结果不在所述预设阈值范围内,则校验未通过;若校验结果为校验未通过,则对所述待校验规则进行拦截,和/或获取所述待校验规则对应的报警接收目标,将所述校验结果发送给所述报警接收目标。
[0012]第二个方面,在本实施例中提供了一种规则校验装置,包括:待校验规则获取模块:用于获取规则校验指令,并基于所述规则校验指令,获取待校验规则;待校验规则写入模块:用于基于所述待校验规则的复杂程度将所述待校验规则写入预设规则运行语言中,所述预设规则运行语言包括Groovy动态语言以及MVEL表达式语言;待校验规则运行模块:用于获取所述待校验规则对应的校验变量,将所述校验变量输入到所述预设规则运行语言中,运行被写入所述待校验规则的所述预设规则运行语言,并获取运行结果;待校验规则校验模块:用于对所述运行结果进行校验,并对校验未通过的所述校验规则进行拦截和/或报警。
[0013]第三个方面,在本实施例中提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面所述的规则校验方法。
[0014]第四个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面所述的规则校验方法。
[0015]与相关技术相比,在本实施例中提供的规则校验方法,通过获取规则校验指令,并基于所述规则校验指令,获取待校验规则;基于所述待校验规则的复杂程度将所述待校验规则写入预设规则运行语言中,所述预设规则运行语言包括Groovy动态语言以及MVEL表达式语言;获取所述待校验规则对应的校验变量,将所述校验变量输入到所述预设规则运行语言中,运行被写入所述待校验规则的所述预设规则运行语言,并获取运行结果;对所述运行结果进行校验,并对校验未通过的所述校验规则进行拦截和/或报警,解决了相关技术中存在对于不同种类规则的校验灵活性较差的问题,实现了可以基于待校验规则配置对应的规则运行语言,提高了对规则校验的灵活性。
[0016]本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
[0017]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0018]图1是本实施例的规则校验方法的终端的硬件结构框图。
[0019]图2是本实施例的规则校验方法的流程示意图。
[0020]图3是本实施例的校验规则方法的待校验规则新增界面示意图。
[0021]图4是本实施例的校验规则方法的校验变量获取界面示意图。
[0022]图5是本实施例的规则校验装置的结构框图。
具体实施方式
[0023]为更清楚地理解本申请的目的、技术方案和优点,下面结合附图和实施例,对本申请进行了描述和说明。
[0024]除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属
具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和系统、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种规则校验方法,其特征在于,包括:获取规则校验指令,并基于所述规则校验指令,获取待校验规则;基于所述待校验规则的复杂程度将所述待校验规则写入预设规则运行语言中,所述预设规则运行语言包括Groovy动态语言以及MVEL表达式语言;获取所述待校验规则对应的校验变量,将所述校验变量输入到所述预设规则运行语言中,运行被写入所述待校验规则的所述预设规则运行语言,并获取运行结果;对所述运行结果进行校验,并对校验未通过的所述校验规则进行拦截和/或报警。2.根据权利要求1所述的规则校验方法,其特征在于,所述基于所述规则校验指令,获取待校验规则包括:获取所述规则校验指令的源地址,基于所述源地址获取对应的待校验规则,所述待校验规则基于所述源地址保存在数据库中。3.根据权利要求1所述的规则校验方法,其特征在于,所述基于所述待校验规则的复杂程度将所述待校验规则写入预设规则运行语言中包括:将所述待校验规则的字符复杂度与预设复杂度进行比对;若所述字符复杂度大于所述预设复杂度,则将所述待校验规则写入到所述Groovy动态语言中;若所述字符复杂度小于所述预设复杂度,则将所述待校验规则写入到所述MVEL表达式语言中。4.根据权利要求1所述的规则校验方法,其特征在于,所述获取所述待校验规则对应的校验变量前还包括:基于预设参数匹配对应的预设变量属性,作为所述校验变量的所述变量属性,所述变量属性用于获取对应的所述校验变量;或;获取业务接口中的参数数值,基于所述参数数值匹配对应的预设变量属性,作为所述校验变量的所述变量属性。5.根据权利要求1或4所述的规则校验方法,其特征在于,所述获取所述待校验规则对应的校验变量包括:基于所述待校验规则,获取所述待校验规则对应的变量属性,通过反射或dubbo泛化调用获取所述变量属性对应的所述校验变量。6.根据权利要求1所述...

【专利技术属性】
技术研发人员:田松
申请(专利权)人:杭州云创共享网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1