CN114443039A - 输入参数校验方法、装置、电子设备及存储介质 - Google Patents

输入参数校验方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114443039A
CN114443039A CN202011191727.4A CN202011191727A CN114443039A CN 114443039 A CN114443039 A CN 114443039A CN 202011191727 A CN202011191727 A CN 202011191727A CN 114443039 A CN114443039 A CN 114443039A
Authority
CN
China
Prior art keywords
parameter
rule
type
verification
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011191727.4A
Other languages
English (en)
Inventor
严霞
李国辉
陈传运
王凯亮
徐玮巍
季赛花
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202011191727.4A priority Critical patent/CN114443039A/zh
Publication of CN114443039A publication Critical patent/CN114443039A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management

Abstract

本发明提供了一种输入参数校验方法、装置、电子设备和存储介质,应用于流程节点中。该方法包括:接收流程节点对应的业务逻辑的输入参数;获取与所述流程节点绑定的参数校验规则;基于所述参数校验规则,校验所述输入参数;若所述输入参数无法通过校验,则停止业务逻辑的执行。通过将参数校验和流程节点结合,提出了适用于流程编排的输入参数校验方法,实现了业务处理流程中流程节点的输入参数自动校验。

Description

输入参数校验方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种流程节点的输入参数校验方法、装置、电子设备及存储介质。
背景技术
在业务性系统中,通过流程编排将各种业务行为动态的、有序的组织起来,聚合形成一条特定的业务执行链,实现完整的业务处理流程。但流程编排要求实现流程节点动态组织、业务动态配置、流程节点的输入参数自动校验等功能。其中流程节点的输入参数校验是必不可少的一个功能,业务处理流程中大多数流程节点都存在输入参数,输入参数可作为业务处理顺序流的执行变量,也可以是输入的相关业务信息。若未经校验的参数传入业务处理流程中,可能会导致业务数据缺失、无法进行后续业务选择或业务处理流程无法正常执行等问题。
有鉴于此,在相关技术中引入了通过在实体上加注解的方式来实现,但是这种方式会导致某些参数的校验遗漏的问题,而若未校验的输入参数不合规,则可能出现业务执行异常或者执行结果错误的问题。
发明内容
本发明实施例提供一种输入参数校验方法、装置、电子设备及存储介质。本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例提供一种输入参数校验方法,应用于流程节点中,包括:
接收流程节点对应的业务逻辑的输入参数;
获取与所述流程节点绑定的参数校验规则;
基于所述参数校验规则,校验所述输入参数;
若所述输入参数无法通过校验,则停止业务逻辑的执行。
第二方面,本发明实施例提供一种输入参数校验装置,应用于流程节点中,包括:
接收模块,用于接收流程节点对应业务逻辑的输入参数;获取与所述流程节点绑定的参数校验规则;
参数解析模块,用于基于所述参数校验规则,校验所述输入参数;若所述输入参数无法通过校验,则停止业务逻辑的执行。
第三方面,本发明实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现如前述一个或多个技术方案提供的输入参数校验方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令;所述计算机可执行指令被处理器执行后,能够实现前述一个或多个技术方案提供的输入参数校验方法。
本发明实施例提供的输入参数校验方法、装置、电子设备及存储介质,通过接收业务的输入参数,并获取与流程节点绑定的参数校验规则;基于参数校验规则,对流程节点的输入参数进行校验。
通过将参数校验和流程节点结合,提出了适用于流程编排的输入参数校验方法,实现了业务处理流程中输入参数,分散到各个流程节点的自行校验,在减少了输入参数校验遗漏的同时,实现了不同流程节点的输入参数的分布。
附图说明
图1是本发明实施例提供的一种输入参数校验方法的流程示意图;
图2是本发明实施例提供的一种输入参数校验装置的结构示意图;
图3是本发明实施例提供一种课程申请审批流程示意图;
图4是本示例提供的一种参数校验装置示意图;
图5是本示例提供的节点规则绑定模块的工作流程示意图;
图6是本示例提供的参数解析模块工作结构示意图;
图7是本发明实施例提供的电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
相关技术中,输入参数的校验方法主要包括以下三种:
(1)通过在实体上加注解的方式实现对输入参数的校验。
Bean Validation为JavaBean验证定义了相关元数据模型和应用程序编程接口(Application Programming Interface,API)。例如,年龄字段,要求用户输入的参数值不为空,且值大于0。在实体对应参数上,加上@NotNull和@Size(min=0)两个注解,就可以确保年龄字段输入的正确性。
但是在流程编排中,为了达到编排效果,流程节点的输入参数无法在代码中定义每个流程节点对应的软件组件模型Bean,因此该方法不适应于流程编排中的输入参数校验,且该校验方法运行时无法实现热更新,无法集中管理,较难维护。
(2)将校验规则配置到数据库或配置文件中,通过工具进行统一校验。
该校验方法解决了校验热部署、配置统一管理等问题,降低了校验功能与业务代码的耦合度。但是在该方案中,能够提供的一般是几种基础类型的校验,若有其他字段类型校验需求,基于该方案很难拓展校验的字段类型。
(3)由流程引擎内置的表单提供对输入参数的校验。
在绘制流程图时,给有输入参数的节点配置对应的表单,流程引擎就能够自动完成相关的校验工作。但配置表单提供校验的类型有限,若想增加自定义的校验,对公共组件校验的拓展较难,并且表单是嵌入到流程图中的,流程部署完成后,校验的类型若需要更新,则需要重新部署流程图,重新启动新流程实例才能生效。
本发明实施例提供一种输入参数校验方法,图1是本发明实施例提供的一种输入参数校验方法的流程示意图,如图1所示,所述方法应用于流程节点中,包括以下步骤:
步骤101,接收流程节点对应的业务逻辑的输入参数;
步骤102,获取与所述流程节点绑定的参数校验规则;
步骤103,基于所述参数校验规则,校验所述输入参数;
步骤104,若所述输入参数无法通过校验,则停止业务逻辑的执行。
在本发明实施例中,上述方法应用于业务流程的流程节点中。其中,所述业务流程是协调企业服务以及描述业务逻辑的最主要的实现方式;在业务处理过程中涉及多个流程节点,即一个完整的业务处理流程包括多个流程节点。每个流程节点可理解为一个相对独立的业务处理子流程。流程节点例如信息录入节点、信息补充节点等。
流程节点可以理解为:执行业务逻辑的不同执行节点,这些节点按照各自执行的业务逻辑的流程进行排序,故称之为流程节点。
可以理解的是,上述业务处理流程所包括的流程节点是基于终端与业务服务器的交互进行划分的,在业务处理流程中,终端所展示的一个界面或页面与一个流程节点相对应。
具体地,流程节点可接收一个或多个终端发送的多个业务数据处理请求。
该输入参数可为携带在业务数据处理请求中的一个或多个参数,也可以是在所述业务数据处理请求之后输入的一个或多个参数。
该输入参数,可为流程节点执行对应业务逻辑所需的操作参数,和/或,控制所述流程节点执行对应业务节点执行对应业务逻辑的控制参数。
可以理解的是,该多个业务数据处理请求可对应于相同的用户标识,也可对应于不同的用户标识。流程节点可同时接收多个终端分别发送的业务数据处理请求,流程节点也可接收同一终端依次发送的多个业务数据处理请求。
步骤102中的参数校验规则是校验输入参数所依据的规则。
在实际应用中,业务处理流程中的每个流程节点均配置有对应的参数校验规则,将流程节点对应的参数校验规则与该流程节点进行绑定。在流程节点接收到输入参数后,获取流程节点绑定的参数校验规则,对输入参数进行校验。
示例性地,流程节点接收到输入参数后,在数据库中查询与流程节点标识对应的参数校验规则,根据参数校验规则,校验接收到的输入参数。
在步骤103中,参数校验规则可包括的待校验的数据项,以及各数据项对应的字段条件;其中,待校验的数据项例如用户的姓名、电话、职业等。数据项对应的字段条件例如该数据项是否为必填项,或者该数据项对应的字段长度或字段格式等。
在实际应用中,根据参数校验规则中包含的待校验的各个数据项和字段条件,在流程节点的输入参数中确定与各数据项相匹配的目标数据项,并将目标数据项对应的数据与该数据项对应的字段条件进行匹配,以分别验证输入参数中各数据项所对应的数据。
示例性地,当待校验的数据项所对应的字段条件表征该数据项为必填项时,在输入参数中确定与该数据项相匹配的目标数据项,并根据目标数据项确定该输入参数中是否存在与该目标数据项对应的数据,以验证输入参数中是否包含待校验的必填项所对应的数据。
示例性地,当待校验的数据项所对应的字段条件用于对该数据项所对应数据的字段长度或字段格式进行限定时,在输入参数中确定与该数据项相匹配的目标数据项,并将该目标数据项对应数据所对应的字段长度或字段格式与该字段条件进行匹配,以验证输入参数中具有字段长度或字段格式限定的数据是否符合要求。
在本发明实施例中,基于参数校验规则对流程节点的输入参数进行校验,是为了验证流程节点的输入参数是否规范,也即验证用户在终端是否按要求填写数据,以保证输入参数的有效性。
在步骤104中,当流程节点的输入参数无法通过校验,即输入参数无效,流程节点停止业务逻辑的执行,以抑制异常参数传入流程中,导致流程无法正常执行。异常参数可包括:无效参数或者错误参数行。异常参数即为不符合对应校验规则的任意参数,例如,未接收到输入参数,即输入参数为“空”,也是一种异常参数。
并且,流程节点针对输入参数中不规范的数据项反馈相应的异常提示信息。
所述异常提示信息可包括:
指示输入参数异常的提示信息;
和/或,
输入参数异常的原因提示信息。
例如,流程节点的输入参数中缺少必填项所对应的数据时,停止向业务服务器提交输入参数,并在终端的用户操作界面中弹出异常提示窗口,提示用户该必填项未输入的相关提示信息。
如此,通过将参数校验和流程节点结合,使得参数校验适用于流程编排,实现了业务处理流程中输入参数,分散到各个流程节点的自行校验,在减少了输入参数校验遗漏的同时,实现了不同流程节点的输入参数的分布。
可选地,所述方法还包括:
若所述输入参数通过校验,则执行所述流程节点所需执行的业务逻辑,以在所述流程节点的业务逻辑执行完毕后进入下一流程节点对应的业务逻辑的执行流程。
在实际应用中,当流程节点的输入参数通过校验,即流程节点的输入参数有效时,利用通过校验的输入参数执行流程节点设定的业务逻辑。并根据当前流程节点的标识信息,确定下一流程节点的标识信息,从而在该流程节点业务逻辑执行完毕后进入下一流程节点业务逻辑的执行。
可以理解的是,业务服务器根据流程节点的标识信息,确定下一流程节点的标识信息,根据下一流程节点的标识信息,获取下一流程节点对应的页面数据,以在终端的用户操作界面中将当前展示页面切换为下一流程节点标识对应的页面,从而将业务处理流程由当前流程节点转换到下一流程节点。
可选地,在所述步骤101之前,所述方法还包括:
根据业务逻辑,确定所述流程节点的输入参数;
根据所述流程节点的输入参数的数据类型,确定所述输入参数的参数校验规则的配置方式;
若所述配置方式为预先配置,则在部署所述流程节点时自动部署参数校验规则。
在本发明实施例中,在接收流程节点对应的业务逻辑的输入参数之前,需要根据业务处理的需求,梳理业务处理流程中各个流程节点的业务执行逻辑,确定各个流程节点的输入参数。根据所述输入参数的数据类型,确定输入参数的参数校验规则的配置方式,以根据所述配置方式配置所述流程节点对应的输入参数的参数校验规则。
在实际的流程编排场景中,流程设计人员可通过流程编辑软件根据实际的业务需求进行流程设置,设置业务处理过程中的流程节点数量,以及各流程节点的输入参数和相应的业务执行逻辑。
在实际应用中,流程节点的输入参数的数据类型可包括基础数据类型和扩展数据类型。当流程节点的输入参数的数据类型为基础数据类型(例如,整型、字符型、浮点型等),可在设置流程节点的数量、输入参数和业务执行逻辑等相关属性参数时,若某一个流程节点的输入参数为基础数据类型,则确定配置方式为预先配置,自动配置输入参数的参数校验规则。
在一个实施例中,所述预先配置生成的校验规则,可理解为通用校验规则,即不同的业务逻辑可共用的参数校验规则。
示例性地,流程设计人员在设置业务处理过程中的流程节点的相关属性参数时,根据业务逻辑,确定流程节点A的输入参数为手机号码(必填项),流程编辑软件根据手机号码、必填项等参数信息,确定流程节点A的输入参数的数据类型为整型,并设置流程节点A对应的参数校验规则。
可选地,所述方法还包括:
若所述配置方式为动态配置,基于检测到配置操作动态配置所述参数校验规则。
在实际应用中,若流程节点的输入参数的数据类型为扩展数据类型时,流程设计人员需要根据具体的扩展数据类型,手动配置扩展数据类型对应的参数校验规则。
在一些实施例中,扩展数据类型可分为自定义数据类型和其它扩展数据类型。这里,自定义数据类型可包括自定义枚举类型和自定义结构体类型;其它扩展数据类型可包括:数组链表类型、时间戳类型、邮箱类型和数据集合类型。
在实际实施时,当扩展数据类型为自定义数据类型时,流程设计人员可根据流程节点的输入参数,定义结构体模型和枚举类型。
在另一个实施例中,配置方式为动态配置的参数校验规则可为个性校验规则,是为对应的业务逻辑专门配置的未必适合其他业务逻辑的校验规则,则可以在配置好流程节点的各种配置之后,根据用户指示再行配置,或者根据逻辑变化,后续再动态调整。
例如,当流程节点的输入参数包括多个基础数据类型的字段,可通过定义结构体类型,结构体内部包含多个基础数据类型的字段,以及各基础数据类型的字段对应的校验规则;使用自定义的结构体类型的参数校验规则实现对该流程节点的输入参数的校验。
示例性地,当流程节点的输入参数限定于多个预设的字段时,可通过定义枚举类型,将预设的多个字段设置为枚举值,使用自定义的枚举类型的参数校验规则实现对流程节点的输入参数的校验。
当扩展数据类型为其它扩展数据类型时,流程设计人员可在业务的源代码中创建字段描述文件,在字段描述文件中撰写扩展数据类型对应的校验方法,完成对其它扩展数据类型的参数校验规则的配置。
可选地,所述参数校验规则包括以下至少之一:
第一类校验规则,为部署所述流程节点时定义的待校验参数的校验规则;
第二类校验规则,为在所述流程节点部署之后动态获取的待校验参数的校验规则。
具体地,第一类校验规则即为通过预先配置方式配置的校验规则;所述第一类校验规则,至少用于输入参数的基础数据类型的校验;其中,所述基础数据类型包括:整型、浮点型、字符型和/或布尔型。
第二类校验规则即为通过动态配置方式配置的校验规则。所述第二类校验规则,用于输入参数的扩展数据类型的校验。
其中,所述扩展数据类型包括以下至少之一:自定义枚举类型;自定义结构体类型;数组链表类型;时间戳类型;邮箱类型;数据集合类型。
在实际应用中,当所述扩展数据类型为数组链表类型时,可配置与流程节点绑定的字段描述文件,在字段描述文件中记录数组链表类型的数据合法性校验。
例如,通过获取数组链表定义的元素数目和数组链表待存储的元素数目,所述数组链表待存储的元素数目必须小于或等于所述数组链表定义的元素数目,以校验所述数组链表类型的数据的合法性。
当所述扩展数据类型为时间戳类型时,可配置与流程节点绑定的字段描述文件,在字段描述文件中记录时间戳类型数据的校验方法。
例如,将所述时间戳类型的数据转换为标准时间格式,并获取当前时间,所述时间戳格式数据对应的标准时间必须小于当前时间,以校验所述时间戳类型的数据的合法性。
当所述扩展数据类型为邮箱类型时,可配置与流程节点绑定的字段描述文件,在字段描述文件中记录邮箱格式合法性校验和/或邮箱真实性的校验方法。
例如,通过校验所述邮箱格式是否符合登录名@主机名.域名的格式,以校验邮箱格式的合法性;根据邮箱格式,确定邮箱服务器,通过与邮箱服务器的交互,以校验邮箱的真实性。当所述扩展数据类型为数据集合类型时,可配置与流程节点绑定的字段描述文件,在字段描述文件中记录数据集合类型的数据合法性验证。
例如,通过所述数据集合类型的数据,是否能获取到所述数据对应的资源文件,以校验所述数据集合类型的数据合法性。
在一些实施例中,所述部署参数校验规则可包括:
对所述参数校验规则进行语法校验;
将通过语法校验的所述参数校验规则的文件格式转换为目标格式;
将所述目标格式的参数校验规则与所述流程节点的节点标识,对应存储至数据库中。
在实际应用中,在通过预先配置方式或动态配置方式配置流程节点的输入参数的参数校验规则后,需要对配置的参数校验规则进行语法校验,以确保配置的参数校验规则的合法性。
具体地,针对第一类校验规则的语法校验可包括:
字段名称、字段类型不可为空;
字段类型是系统内置类型或已入库的自定义类型;
设置的字段最大值要大于字段最小值;
设置的字段最大长度要大于字段最小长度。
针对第二类交谈规则的语法校验可包括:
数据类型名称在自定义类型表中不存在;
数据类型的名称不能跟已内置的数据类型名称相同;其中,内置数据类型指的是系统已内置的校验类型(例如,布尔型、整型等);
数据类型的名称不能和组合数据类型名称相同(例如,list、array等);
不能和系统保留的数据类型相同(例如,流程节点中的附件校验预留了attachment类型);
对于自定义结构体类型,结构体内各字段的名称必须唯一,结构体内每个字段的定义必须满足针对第一类校验规则的语法校验规则;
对于自定义枚举类型,枚举中设置的枚举值不可重复。
在本发明实施例中,所述目标格式可为对象简谱(java Script Objectnotation,json)格式。这里,json是一种轻量级的数据交换格式,易于用户阅读和编写,同时也易于机器解析和生成,能够有效地提升网络传输效率。
在实际应用中,将转换为json格式的参数校验规则与所述流程节点的节点标识,对应存储至数据库中,以将参数校验规则与流程节点进行绑定。
在另一些实施例中,可通过设置流程节点的校验规则绑定信息,实现对流程节点的参数校验规则绑定。
具体地,所述流程节点的校验规则绑定信息可包括:校验规则标识信息,绑定类型,输入输出类型,参数校验场景,流程节点的定义类型,流程节点标识信息和配置的校验规则。
所述绑定类型可包括:校验规则只对当前节点生效和校验规则对所述业务处理流程中的所有流程节点都生效。
示例性地,流程节点A和流程节点B的输入参数均包括验证码,流程节点A处要求输入的验证码是指流程节点A关联的页面上显示的图片内的字符,流程节点B处要求输入的验证码是指流程节点B关联的页面上显示的图片内的计算式的值。因此,流程节点A的输入参数(即验证码)的参数校验规则应配置为字符型数据类型对应的校验规则,流程节点B的输入参数(即验证码)的参数校验规则应配置为浮点型数据类型对应的校验规则,并分别将流程节点A和B的绑定类型设置为校验规则只对当前节点生效。
示例性地,流程节点C和流程节点D的输入参数相同,均包括用户的手机号码,由于用户手机号码的字符长度都是固定的,因而可将流程节点C的输入参数(即手机号码)的参数校验规则配置为限定长度的字符型数据类型对应的校验规则,并将流程节点C的绑定类型设置为校验规则对所述业务处理流程中使得所有流程节点生效,流程节点D可直接使用流程节点C绑定的上述参数校验规则。
这里,还可根据实际需求设置绑定类型的默认值,例如将绑定类型的默认值设置为校验规则只对当前节点生效。
所述参数校验场景可包括完成流程节点的业务逻辑时,对流程节点的输入参数进行校验,以及调用签收流程节点的业务接口时,对流程节点的输入参数进行校验。
在实际应用中,当流程节点的校验规则绑定信息配置为完成流程节点的业务逻辑时,流程节点可接收多个终端发送的业务数据处理请求,并根据参数校验规则,分别对多个终端发送的业务数据处理请求中携带的输入参数进行校验。
例如,流程节点为教务系统的用户登录,用户A和用户B可同时向流程节点提交登录验证请求,流程节点根据参数校验规则,分别对用户A、用户B的登录验证请求中携带的用户账号和密码进行校验,并根据校验结果,分别向用户A、用户B反馈登录验证结果。
当流程节点的校验规则绑定信息配置为调用签收流程节点的业务接口时,流程节点仅接收一个终端发送的业务数据处理请求,并根据参数校验规则,对该终端发送的业务数据处理请求中携带的输入参数进行校验。
例如,流程节点为外卖配送系统中的订单分配,当流程节点将外卖信息发布出来,用户A和用户B向流程节点发送订单信息获取请求,流程节点根据请求提交时间,接收其中一个用户的订单信息获取请求,并根据参数校验规则,对订单信息获取请求中携带的用户信息进行校验,根据校验结果,确定是否将订单信息发送给该用户。
在实际应用中,当终端触发了流程节点的任务时,检索所述流程节点的校验规则绑定信息,根据校验规则绑定信息确定所述流程节点的参数校验规则,根据所述参数校验规则,对输入参数进行校验。
可选地,所述方法还包括:
接收规则处理操作;其中,所述规则处理操作,用于指示删除所述数据库中的参数校验规则、在所述数据库中新增所述参数校验规则、更新所述数据库中的参数校验规则,或者删除所述数据库中的参数校验规则;
响应所述规则处理操作。
在实际应用中,规则处理操作可包括参数校验规则的标识信息和规则处理信息。所述待处理的参数校验规则可包括第一类校验规则和/或第二类校验规则。
在实际应用中,当所述待处理的参数校验规则为第一类校验规则时,可根据所述输入参数的数据类型,获取所述数据类型对应的工具类,对所述工具类定义的校验规则的源代码进行相应处理。
当所述待处理的参数校验规则为第二类校验规则时,可根据规则处理操作中携带的参数校验规则的标识信息,在数据库中查找到待处理的参数校验规则,根据规则处理信息,对所述参数校验规则进行相应的处理。
在一些实施例中,所述步骤103包括:
当所述输入参数的数据类型为自定义枚举类型时,将所述输入参数与所述第二类校验规则中预设的枚举值进行匹配;
根据匹配结果,确定所述输入参数的校验结果。
在实际实施时,若输入参数的数据类型为自定义枚举类型,确定所述输入参数对应的参数校验规则为第二类校验规则。根据流程节点的标识信息,从数据库中获取流程节点对应的第二类校验规则,将输入参数与第二类校验规则中预设的多个枚举值进行匹配;当输入参数与其中一个枚举值相同时,确定输入参数满足第二类校验规则,则流程节点的输入参数通过校验,可继续执行所述流程节点所需执行的业务逻辑。
在另一些实施例中,所述步骤103,包括:
当所述输入参数的数据类型为自定义结构体类型时,基于所述第二类校验规则,分别对结构体内的各个字段进行校验;
根据结构体内的各个字段的校验结果,确定所述输入参数的校验结果。
在实际实施时,若输入参数的数据类型为自定义结构体类型,确定所述输入参数对应的参数校验规则为第二类校验规则。根据流程节点的标识信息,从数据库中获取流程节点对应的第二类校验规则,根据第二类校验规则内的各数据项和各数据项对应的字段条件,在流程节点的输入参数中确定与各数据项对应的目标数据项,将目标数据项对应的数据与第二类校验规则内的各数据项对应的字段条件进行匹配,分别对自定义结构体内的各个数据项进行校验,当自定义结构体内的各个数据项均满足其对应的字段条件时,确定流程节点的输入参数满足第二类校验规则,则流程节点的输入参数通过校验,可继续执行所述流程节点所需执行的业务逻辑。
如此,通过动态配置参数规则的方式,拓展了参数校验的数据类型,并且通过将参数校验规则和流程节点的标识信息,对应存储至数据库中,与业务处理流程的定义隔离,实现了参数校验规则的热部署,同时也便于对流程节点的参数校验规则集中配置和处理。
下面,本发明实施例提供一种输入参数校验装置,如图2所示,图2是本发明实施例提供的一种输入参数校验装置20的结构示意图。所述装置包括:
接收模块,用于接收流程节点对应的业务逻辑的输入参数;获取与所述流程节点绑定的参数校验规则;
参数解析模块,用于基于所述参数校验规则,校验所述输入参数;若所述输入参数无法通过校验,则停止业务逻辑的执行。
可选地,所述参数解析模块,还用于:
若所述输入参数通过校验,则执行所述流程节点所需执行的业务逻辑,以在所述流程节点的业务逻辑执行完毕后进入下一流程节点对应的业务逻辑的执行流程。
可选地,所述装置还包括规则定义模块,用于:
根据业务逻辑,确定所述流程节点的输入参数;
根据所述流程节点的输入参数的数据类型,确定所述输入参数的参数校验规则的配置方式;
若所述配置方式为预先配置,则在部署所述流程节点时自动部署参数校验规则。
可选地,所述规则定义模块,还用于:若所述配置方式为动态配置,基于检测到配置操作动态配置所述参数校验规则。
可选地,所述规则定义模块还用于:
对所述参数校验规则进行语法校验;
将通过语法校验的所述参数校验规则的文件格式转换为目标格式;
将所述目标格式的参数校验规则与所述流程节点的节点标识,对应存储至数据库中。
可选地,所述装置还包括响应模块,用于:
接收规则处理操作;其中,所述规则处理操作,用于指示删除所述数据库中的参数校验规则、在所述数据库中新增所述参数校验规则、更新所述数据库中的参数校验规则,或者删除所述数据库中的参数校验规则;
响应所述规则处理操作。
可选地,所述参数校验规则包括以下至少之一:
第一类校验规则,为部署所述流程节点时定义的待校验参数的校验规则;
第二类校验规则,为在所述流程节点部署之后动态获取的待校验参数的校验规则。
可选地,所述第一类校验规则,至少用于输入参数的基础数据类型的校验;其中,所述基础数据类型包括:整型、浮点型、字符型和/或布尔型。
可选地,所述第二类校验规则,用于输入参数的扩展数据类型的校验;
所述扩展数据类型包括以下至少之一:
自定义枚举类型;
自定义结构体类型;
数组链表类型;
时间戳类型;
邮箱类型;
数据集合类型。
可选地,所述参数解析模块,具体用于:
当所述输入参数的数据类型为自定义枚举类型时,将所述输入参数与所述第二类校验规则中预设的枚举值进行匹配;
根据匹配结果,确定所述输入参数的校验结果。
可选地,所述参数解析模块,具体用于:
当所述输入参数的数据类型为自定义结构体类型时,基于所述第二类校验规则,分别对结构体内的各个字段进行校验;
根据结构体内的各个字段的校验结果,确定所述输入参数的校验结果。
如此,通过将参数校验和流程节点结合,使得参数校验适用于流程编排,实现了业务处理流程中输入参数,分散到各个流程节点的自行校验,在减少了输入参数校验遗漏的同时,实现了不同流程节点的输入参数的分布。
结合本发明上述实施例,下面将以课程申请审批流程为例,说明本发明实施例在一个实际的应用场景中的示例性应用。如图3所示,图3是本发明实施例提供一种课程申请审批流程示意图。
在课程申请审批流程中,教师开设一门课程,需要填写申报并由教务处审核通过后,可以在对应学期开设课程。学生申请选课信息需要辅导员和教务处审核通过。如表1所示,表1是课程申请审批流程中各个流程节点的输入参数表。
表1课程申请审批流程中各个流程节点的输入参数表
Figure BDA0002752936740000161
Figure BDA0002752936740000171
本示例提供了一种参数校验装置,如图4所示,图4是本示例提供的一种参数校验装置示意图。所述参数校验装置包括规则定义模块、节点规则绑定模块和参数解析模块。
规则定义模块,用于根据课程申请审批流程的业务处理逻辑,确定业务处理流程中的流程节点数量和各流程节点的输入参数。并根据流程节点的输入参数的数据类型,确定输入参数的参数校验规则的配置方式。
在实际应用中,根据业务需求,梳理业务处理流程中每个流程节点的输入参数,即输入参数包含的每个字段的中英文名称、字段类型、是否必须等。
所述规则定义模块中定义了配置输入参数校验规则的两个模型,即字段校验规则的模型以及自定义数据类型的模型。可根据这两个模型来配置流程节点的输入参数校验规则。
其中,所述字段校验规则模型,用于校验以下场景:参数类型校验、是否必填校验、若是数值类型(整型或浮点型),可配置数值范围校验、若是字符类型,可配置字符长度校验。
字段校验规则模型如下:
Figure BDA0002752936740000172
Figure BDA0002752936740000181
如表2所示,表2是字段校验规则模型字段填写说明表。
表2字段校验规则模型字段填写说明表
Figure BDA0002752936740000182
这里,字段校验规则模型中的type指的是待校验字段的类型,字段校验规则模型支持基础数据类型的校验规则的配置,例如,整型、浮点型、字符型、布尔型等。
所述自定义数据类型的模型,用于根据用户需求定义结构体类型或枚举类型。这里,所述结构体类型指的是字段由多个输入参数组成;判断结构体类型校验是否通过,等于对结构体内的所有输入参数进行校验。
例如,流程节点“学生填报选课信息”中的courseList字段,字段的类型是List<CourseInfo>,即需要校验该流程节点输入的值是否是一个链表,并且链表中的输入参数是否符合CourseInfo定义的参数。
所述枚举类型指的是所述输入参数必须符合规定的枚举值。例如,流程节点“填报申报类别”,该流程节点的输入参数只能是TEACHER和STUDENT两种。
自定义数据类型的结构模型如下:
Figure BDA0002752936740000191
如表3所示,表3是自定义数据类型的模型字段填写说明表。
表3自定义数据类型的模型字段填写说明表
Figure BDA0002752936740000192
其中,通过definition字段来区分结构体类型和枚举类型。
当通过自定义数据类型的模型配置结构体类型时,UdfTypeDef中的category填写STRUCT,结构体内部的字段使用List<FieldDef>来定义。
当配置枚举类型时,UdfTypeDef中的category填写ENUM,枚举项使用List<EnumOption>来定义。
这里,EnumOption模型中的text为枚举项显示的文本,value为枚举值。
Figure BDA0002752936740000193
示例性地,以流程节点为“填写申报类别”,根据业务逻辑,确定流程节点的输入参数的字段类型,根据自定义数据类型的模型定义自定义枚举数据类型,自定义枚举数据类型的名称为ApplyType,枚举值包含TEACHER和SUTDENT,校验规则配置如下:
Figure BDA0002752936740000201
根据上述两种模型配置参数校验规则后,通过REST API输入到系统中,对配置的参数校验规则进行语法校验。
在实际实施时,所述语法校验可包括校验所述参数校验规则是否符合字段校验规则的模型或自定义数据类型的模型的定义、对字段校验规则的模型配置的参数校验规则的校验和对自定义数据类型的模型配置的参数校验规则的校验。
其中,对字段校验规则的模型配置的参数校验规则的校验可包括:
字段名称(name)、字段类型(type)不可为空;
字段类型是系统内置类型或已入库的自定义类型;
字段的最大值(maximum)大于字段的最小值(minimum);
字段长度最大值(maxLength)大于字段长度最小值(minLength)。
对自定义数据类型的模型配置的参数校验规则的校验可包括:
数据类型的名称(name)在自定义类型表中不存在;
数据类型的名称不能跟已内置的数据类型名称相同;其中,内置数据类型指的是系统已内置的参数类型,例如布尔型、邮箱等;
数据类型的名称不能和组合数据类型名称(例如list,array)相同,不能个系统保留的数据类型相同,系统可以预留还未实现,后期待实现的保留字段,例如流程节点中的附件校验,预留了attachment类型;
校验输入的definition是否符合UdfTypeDef的定义;结构体类型中,结构体元素名称必须唯一,结构体内每个元素的定义必须满足对字段校验规则的模型配置的参数校验规则的校验;枚举中设置的枚举值不可重复等。
根据规则定义模块中定义了配置输入参数校验规则的两个模型,配置流程节点的输入参数的参数校验规则,并将配置的参数校验规则转换为json格式,存储到数据库中。规则定义模块还提供配置的增删改查接口,用于对数据库中存的参数校验规则进行增、删、改、查的操作。
示例性地,以流程节点为教务处审核为例,该流程节点的输入参数包含3个字段,如表4所示,表4是流程节点“教务处审核”的输入参数的字段说明表。此外,表4中涉及到的输入参数也可以被流程节点“辅导员审核”使用到。
表4流程节点“教务处审核”的输入参数的字段说明表
Figure BDA0002752936740000211
具体地,由于表4中涉及到的输入参数能够同时被流程节点“教务处审核”和流程节点“辅导员审核”使用到,因此可以将所述输入参数配置为一个“审核”自定义结构体类型。
将自定义结构体类型的名称设置为Review,将Review存储至数据库中。
具体配置代码如下:
Figure BDA0002752936740000212
Figure BDA0002752936740000221
自定义类型Review存储后,就可以直接使用了,如流程节点“教务处审核”可以配置如下规则:
“typeDef”:{
“type”:“Review”
}
所述节点规则绑定模块可用于将参数校验规则与业务处理过程中的流程节点绑定,为流程节点赋予输入参数校验的功能。
具体地,输入参数的校验规则转换为json格式后,还需要与流程节点进行绑定,绑定的数据模型如下:
Figure BDA0002752936740000222
Figure BDA0002752936740000231
如表5所示,表5是流程节点参数规则绑定模型的字段填写说明表。
表5流程节点参数规则绑定模型的字段填写说明表
Figure BDA0002752936740000232
其中,字段binderType表示绑定的类型。不填写时,默认为TASKDEF。这里,字段binderType配置为TASKDEF时,参数校验规则只对当前节点生效;字段binderType配置为PROCDEF时,参数校验规则对该业务处理流程中的所有流程节点都生效。
字段condition表示校验的场景。不填写时,默认为FINISH。这里字段condition配置为FINISH时,表示只有完成该流程节点的执行逻辑时,才会去对流程节点的输入参数进行校验。字段condition配置为CLIAME时,表示调用签收流程节点的执行逻辑时,对流程节点的输入参数进行校验。
示例性地,如图5所示,图5是本示例提供的节点规则绑定模块的工作流程示意图。当前台或其他微服务触发了签收或完成任务的接口时,检索节点绑定表,筛选出该流程节点配置的参数校验规则集合,将流程节点的输入参数和配置的参数校验规则集合输入到参数解析模块中,解析携带的参数是否符合配置的规范。若输入参数符合配置的参数校验规则时,继续签收/完成任务,否则抛出异常,反馈流程节点的输入参数不符合参数校验规则,重新输入后才能正常运转业务处理流程。
如图6所示,图6是本示例提供的参数解析模块工作结构示意图。所述参数解析模块,可用于根据流程节点绑定的参数校验规则,对流程节点的输入参数值进行校验,给出解析结果。
参数解析模块定义了一个数据类型包datatype,用于存储输入参数校验的相关工具类。
当流程节点的输入参数的数据类型为基础类型或配置的其他内置数据类型时,参数解析模块可用于定义了一个接口DataTypeDes;
其中,接口定义了校验必须的信息,包括字段类型的名称,字段类型对应的校验方法。
具体地,根据字段校验规则模型中的字段类型(type)字段,来匹配待校验的字段类型,根据字段类型,在业务处理流程运行时定位到该字段类型的校验器。
Figure BDA0002752936740000241
在实际应用中,每一种内置的数据类型都会有对应的一个工具类XXXTypeDes,所述工具类实现DataTypeDes接口,每一种内置的数据类型可通过动态调用其对应的校验器,对输入参数进行校验。
示例性地,流程节点将地图上框出的一个矩形作为输入参数,该数据类型对应的工具类如下所示:
Figure BDA0002752936740000251
当流程节点的输入参数为自定义结构体类型时,参数解析模块可用于将结构体的校验转换为结构体内部所有字段的校验,当结构体内部的所有字段均满足其对应的参数校验规则时,确定输入参数满足参数校验规则。
当流程节点的输入参数为自定义枚举类型时,参数解析模块可用于根据流程节点对应的参数校验规则中预先定义的枚举值,对输入参数进行匹配,若输入参数与其中一个预先定义的枚举值相同时,确定输入参数满足参数校验规则。
本发明实施例还提供一种电子设备,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的一种输入参数校验方法。
下面对本发明实施例提供的一种电子设备的硬件结构做详细说明,电子设备包括但不限于服务器或终端。参见图7,图7是本发明实施例提供的电子设备的结构示意图,该输入参数校验设备70包括:至少一个处理器701、存储器702,可选的,输入参数校验设备70可进一步包括至少一个通信接口703,输入参数校验设备70中的各个组件通过总线系统704耦合在一起,可理解,总线系统704用于实现这些组件之间的连接通信。总线系统704除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图7中将各种总线都标为总线系统704。
可以理解,存储器702可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器702旨在包括但不限于这些和任意其它适合类型的存储器。
本发明实施例中的存储器702用于存储各种类型的数据以支持输入参数校验设备70的操作。这些数据的示例包括:用于在输入参数校验设备70上操作的任何计算机程序,如存储的样本数据、预测模型等,实现本发明实施例方法的程序可以包含在存储器702中。
上述本发明实施例揭示的方法可以应用于处理器701中,或者由处理器701实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,输入参数校验设备70可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或其他电子元件实现,用于执行上述方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本发明实施例还提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行后,并执行前述一个或多个技术方案提供的输入参数校验方法,例如,可执行如图1所示的方法。
本发明实施例提供的计算机存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。可选为,所述计算机存储介质可为非瞬间存储介质。这里的非瞬间存储介质又可以称为非易失性存储介质。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。计算机可以是包括智能终端和服务器在内的各种计算设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,HyperTextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。

Claims (14)

1.一种输入参数校验方法,其特征在于,应用于流程节点,包括:
接收流程节点对应的业务逻辑的输入参数;
获取与所述流程节点绑定的参数校验规则;
基于所述参数校验规则,校验所述输入参数;
若所述输入参数无法通过校验,则停止业务逻辑的执行。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述输入参数通过校验,则执行所述流程节点所需执行的业务逻辑,以在所述流程节点的业务逻辑执行完毕后进入下一流程节点对应的业务逻辑的执行流程。
3.根据权利要求1所述的方法,其特征在于,所述接收流程节点对应的业务逻辑的输入参数之前,所述方法还包括:
根据业务逻辑,确定所述流程节点的输入参数;
根据所述流程节点的输入参数的数据类型,确定所述输入参数的参数校验规则的配置方式;
若所述配置方式为预先配置,则在部署所述流程节点时自动部署参数校验规则。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述配置方式为动态配置,基于检测到配置操作动态配置所述参数校验规则。
5.根据权利要求3或4所述的方法,其特征在于,所述部署参数校验规则包括:
对所述参数校验规则进行语法校验;
将通过语法校验的所述参数校验规则的文件格式转换为目标格式;
将所述目标格式的参数校验规则与所述流程节点的节点标识,对应存储至数据库中。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
接收规则处理操作;其中,所述规则处理操作,用于指示删除所述数据库中的参数校验规则、在所述数据库中新增所述参数校验规则、更新所述数据库中的参数校验规则,或者删除所述数据库中的参数校验规则;
响应所述规则处理操作。
7.根据权利要求1所述的方法,其特征在于,所述参数校验规则包括以下至少之一:
第一类校验规则,为部署所述流程节点时定义的待校验参数的校验规则;
第二类校验规则,为在所述流程节点部署之后动态获取的待校验参数的校验规则。
8.根据权利要求7所述的方法,其特征在于,所述第一类校验规则,至少用于输入参数的基础数据类型的校验;其中,所述基础数据类型包括:整型、浮点型、字符型和/或布尔型。
9.根据权利要求7所述的方法,其特征在于,所述第二类校验规则,用于输入参数的扩展数据类型的校验;
所述扩展数据类型包括以下至少之一:
自定义枚举类型;
自定义结构体类型;
数组链表类型;
时间戳类型;
邮箱类型;
数据集合类型。
10.根据权利要求9所述的方法,其特征在于,所述基于所述参数校验规则,校验所述输入参数,包括:
当所述输入参数的数据类型为自定义枚举类型时,将所述输入参数与所述第二类校验规则中预设的枚举值进行匹配;
根据匹配结果,确定所述输入参数的校验结果。
11.根据权利要求9所述的方法,其特征在于,所述基于所述参数校验规则,校验所述输入参数,包括:
当所述输入参数的数据类型为自定义结构体类型时,基于所述第二类校验规则,分别对结构体内的各个字段进行校验;
根据结构体内的各个字段的校验结果,确定所述输入参数的校验结果。
12.一种输入参数校验装置,其特征在于,应用于流程节点中,所述装置包括:
接收模块,用于接收流程节点对应的业务逻辑的输入参数;获取与所述流程节点绑定的参数校验规则;
参数解析模块,用于基于所述参数校验规则,校验所述输入参数;若所述输入参数无法通过校验,则停止业务逻辑的执行。
13.一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现如权利要求1-11任一项所述的输入参数校验方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有可执行指令,所述可执行指令被处理器执行时,实现如权利要求1-11任一项所述的输入参数校验方法。
CN202011191727.4A 2020-10-30 2020-10-30 输入参数校验方法、装置、电子设备及存储介质 Pending CN114443039A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011191727.4A CN114443039A (zh) 2020-10-30 2020-10-30 输入参数校验方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011191727.4A CN114443039A (zh) 2020-10-30 2020-10-30 输入参数校验方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN114443039A true CN114443039A (zh) 2022-05-06

Family

ID=81357162

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011191727.4A Pending CN114443039A (zh) 2020-10-30 2020-10-30 输入参数校验方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114443039A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115334145A (zh) * 2022-08-09 2022-11-11 中国建设银行股份有限公司 一种业务处理方法、装置、电子设备及存储介质
CN116303380A (zh) * 2023-01-10 2023-06-23 浪潮智慧科技有限公司 一种监测业务中的数据质量校验方法、设备及介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115334145A (zh) * 2022-08-09 2022-11-11 中国建设银行股份有限公司 一种业务处理方法、装置、电子设备及存储介质
CN115334145B (zh) * 2022-08-09 2024-04-12 中国建设银行股份有限公司 一种业务处理方法、装置、电子设备及存储介质
CN116303380A (zh) * 2023-01-10 2023-06-23 浪潮智慧科技有限公司 一种监测业务中的数据质量校验方法、设备及介质
CN116303380B (zh) * 2023-01-10 2024-01-23 浪潮智慧科技有限公司 一种监测业务中的数据质量校验方法、设备及介质

Similar Documents

Publication Publication Date Title
CN108415832B (zh) 接口自动化测试方法、装置、设备及存储介质
CN109308285A (zh) 数据库脚本管理方法、装置、计算机设备及存储介质
CN110941546A (zh) Web页面用例的自动化测试方法、装置、设备及存储介质
CN108959076A (zh) 一种api在线调试方法
CN112765023B (zh) 测试用例生成方法、装置
TW201439792A (zh) 資料庫訪問系統及方法
CN110990274B (zh) 一种生成测试案例的数据处理方法、装置及系统
CN111290742A (zh) 参数验证方法、装置、电子设备及可读存储介质
CN112256558A (zh) 一种测试用例的生成方法、装置、计算机设备及存储介质
CN111930617B (zh) 基于数据对象化的自动化测试方法及装置
CN111026670B (zh) 测试用例的生成方法、测试用例的生成装置及存储介质
CN107330014B (zh) 一种数据表的创建方法与设备
CN108595342A (zh) 单元测试方法和装置
CN114443039A (zh) 输入参数校验方法、装置、电子设备及存储介质
WO2023065746A1 (zh) 算法应用元生成方法、装置、电子设备、计算机程序产品及计算机可读存储介质
CN105786695A (zh) 数据测试方法及系统
CN114372006A (zh) 测试用例自动生成方法、系统、计算机设备和存储介质
CN115904989A (zh) 一种接口测试方法、装置、设备及可读存储介质
CN111144837A (zh) 流程编排的方法、装置、存储介质及电子设备
CN105740219A (zh) 一种报表的自定义方法及装置
CN111258884B (zh) 一种用于自动生成接口准确性校验脚本的系统
CN112561690A (zh) 信用卡分期业务接口的测试方法、系统、设备及存储介质
WO2021022702A1 (zh) 日志插入方法、装置、计算机装置及存储介质
CN113535141A (zh) 数据库操作代码的生成方法及装置
CN110362294A (zh) 开发任务执行方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination