CN110287383A - 一种字段信息检验方法及装置 - Google Patents
一种字段信息检验方法及装置 Download PDFInfo
- Publication number
- CN110287383A CN110287383A CN201910580581.3A CN201910580581A CN110287383A CN 110287383 A CN110287383 A CN 110287383A CN 201910580581 A CN201910580581 A CN 201910580581A CN 110287383 A CN110287383 A CN 110287383A
- Authority
- CN
- China
- Prior art keywords
- field
- inspection rule
- inspection
- rule
- service fields
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种字段信息检验方法及装置,其中方法为:获取字段信息;所述字段信息包括配置字段信息和业务字段信息,所述配置字段信息包括至少一个配置字段;将所述至少一个配置字段作为当前的配置字段组合,按照预设操作获取所述当前的配置字段组合对应的预设字段检验规则;按照所述预设字段检验规则,对所述业务字段信息进行检验。上述方法应用于金融科技(Fintech)时,与预设检验规则表匹配到的字段检验规则最适应字段信息的检验,匹配不到再将去除了一个配置字段后的配置字段组合重新作为当前的配置字段组合,与预设检验规则表进行匹配,从而找到尽可能适应字段信息的预设字段检验规则,提升了字段信息检验的适应性。
Description
技术领域
本发明涉及金融科技(Fintech)领域和信息检验领域,尤其涉及一种字段信息检验方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术(大数据、分布式、区块链(Blockchain)、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变。目前,金融科技领域中,一些金融***需要通过对外服务接口传入字段来实现金融交易功能,由于金融交易对运行稳定性要求较高,因此需要对传入金融***的字段信息进行校验。
由于各接入方的业务有所不同,同一个对外服务接口在字段信息上可能会存在或多或少的差异。如平台1在使用某接口时,需要平台1向该接口传A、B、C三个业务字段,而平台2同样使用该接口时,需要平台2向该接口传A、C、D三个业务字段。现有技术中,对所有接入方的业务字段,都按照同一个通用字段校验规则,进行检验。但是对于不同接入方的同一个业务字段,对各接入方的要求不一样,举例来说,平台1的业务字段的A,取值范围要求为0~100;平台2的业务字段的A,取值范围要求为50~200;这就需要在检验业务字段A时首先判断是来自平台1还是平台2,再根据对应平台的检验要求进行检验,而且后续检验每个业务字段时都这样进行这判断再校验,显然,一个通用字段校验规则对不同接入方的字段信息检验的适应性较差。
发明内容
本申请实施例提供一种字段信息检验方法及装置,解决了现有技术中对不同接入方的字段信息检验的适应性较差的问题。
第一方面,本申请实施例提供一种字段信息检验方法,包括:获取字段信息;所述字段信息包括配置字段信息和业务字段信息,所述配置字段信息包括至少一个配置字段;将所述至少一个配置字段作为当前的配置字段组合,按照预设操作获取所述当前的配置字段组合对应的预设字段检验规则;所述预设操作为:将所述当前的配置字段组合与预设检验规则表进行匹配;所述预设检验规则表包括至少一个字段检验规则;若能匹配到字段检验规则,则将该字段检验规则作为所述预设字段检验规则输出;若不能匹配到字段检验规则,且所述当前的配置字段组合中包括至少两个配置字段,则从所述当前的配置字段组合中去除一个配置字段,并将去除了所述一个配置字段后的配置字段组合重新作为所述当前的配置字段组合,并返回所述将所述配置字段组合与预设检验规则表进行匹配的步骤;按照所述预设字段检验规则,对所述业务字段信息进行检验。
上述方法中,通过在字段信息的配置字段信息,按照预设操作获取预设字段检验规则,首先将配置字段信息与预设检验规则表进行匹配,由于当前的配置字段组合为配置字段信息时,当前的配置字段组合包括了最多的配置字段,因此与预设检验规则表匹配到的字段检验规则最适应字段信息的检验,匹配不到再将去除了一个配置字段后的配置字段组合重新作为当前的配置字段组合,与预设检验规则表进行匹配,从而找到尽可能适应字段信息的预设字段检验规则,提升了字段信息检验的适应性。
一种可选实施方式中,所述将所述当前的配置字段组合与预设检验规则表进行匹配,包括:按照预设映射规则,将所述当前的接口字段组合映射为字符串;从所述预设检验规则表中确定所述字符串的类型对应的子检验规则表;确定所述字符串在所述子检验规则表中是否有对应的字段检验规则。
上述方法中,按照预设映射规则,将当前的接口字段组合映射为字符串,在字符串的类型对应的子检验规则表中,确定是否有对应的字段检验规则,从而可根据字符串的类型灵活设置对应的子检验规则表,以对字段检验规则进行归类。
一种可选实施方式中,所述预设检验规则表中每条字段检验规则标记了失效时段属性和/或生效时段属性,所述失效时段属性指示字段检验规则在当前时刻不可匹配,所述生效时段属性指示字段检验规则在当前时刻可匹配,所述将所述当前的配置字段组合与预设检验规则表进行匹配,还包括:将所述当前的配置字段组合与第一时效检验规则表进行匹配;所述第一时效检验规则表为所述预设检验规则表中去除了标记失效时段属性的字段检验规则后的字段检验规则的组合;和/或,将所述当前的配置字段组合与第二时效检验规则表进行匹配;所述第二时效检验规则表为所述预设检验规则表中标记生效时段属性的字段检验规则的组合。
上述方法中,通过对所述预设检验规则表中每条字段检验规则标记失效时段属性和/或生效时段属性,可选择将当前的配置字段组合与第一时效检验规则表和/或第二时效检验规则表进行匹配,从而增加对生效或失效维度的考虑,进一步增加了匹配到的字段检验规则的多样性和灵活性。
一种可选实施方式中,所述按照所述预设字段检验规则,对所述业务字段信息进行检验,包括:若所述预设字段检验规则中标记了第一业务字段为所述业务信息中的必填字段,且所述业务信息未包括所述第一业务字段,或者所述第一业务字段的取值为空,则确定所述业务信息为不合法;对于第二业务字段,所述第二业务字段为在所述业务字段信息和所述预设字段检验规则中均存在的任一业务字段,若所述第二业务字段的至少一项校验中任一项校验不合法,则确定所述业务信息为不合法;所述至少一项检验包括:所述第二业务字段的取值的格式是否符合所述第二业务字段的预设格式,若不符合,则不合法;所述第二业务字段的取值的长度是否符合所述第二业务字段的预设长度,若不符合,则不合法;若所述预设字段检验规则中标记所述第二业务字段为选填字段,则确定所述第二业务字段的取值是否在所述选填字段的预设取值范围内,若不在,则不合法。
上述方式下,提供了根据第一业务字段判断业务信息不合法的方法,以及提供了根据第二业务字段判断业务信息不合法的方法,还提供了第二业务字段为选填字段时判断业务信息不合法的方法。
一种可选实施方式中,若所述当前的配置字段组合中有且仅有一个配置字段,则将所述预设检验规则表中的默认通用字段检验规则作为所述预设字段检验规则。
上述方式下,提供了当前的配置字段组合中有且仅有一个配置字段时的字段检验规则,即为默认通用字段检验规则,保障了字段信息必然能匹配到预设字段检验规则。
第二方面,本申请提供一种字段信息检验装置,包括:获取模块,用于获取字段信息;所述字段信息包括配置字段信息和业务字段信息,所述配置字段信息包括至少一个配置字段;处理模块,用于将所述至少一个配置字段作为当前的配置字段组合,按照预设操作获取所述当前的配置字段组合对应的预设字段检验规则;所述预设操作为:将所述当前的配置字段组合与预设检验规则表进行匹配;所述预设检验规则表包括至少一个字段检验规则;若能匹配到字段检验规则,则将该字段检验规则作为所述预设字段检验规则输出;若不能匹配到字段检验规则,且所述当前的配置字段组合中包括至少两个配置字段,则从所述当前的配置字段组合中去除一个配置字段,并将去除了所述一个配置字段后的配置字段组合重新作为所述当前的配置字段组合,并返回所述将所述配置字段组合与预设检验规则表进行匹配的步骤;按照所述预设字段检验规则,对所述业务字段信息进行检验。
一种可选实施方式中,所述处理模块具体用于:按照预设映射规则,将所述当前的接口字段组合映射为字符串;从所述预设检验规则表中确定所述字符串的类型对应的子检验规则表;确定所述字符串在所述子检验规则表中是否有对应的字段检验规则。
一种可选实施方式中,所述预设检验规则表中每条字段检验规则标记了失效时段属性和/或生效时段属性,所述失效时段属性指示字段检验规则在当前时刻不可匹配,所述生效时段属性指示字段检验规则在当前时刻可匹配,所述处理模块还用于:将所述当前的配置字段组合与第一时效检验规则表进行匹配;所述第一时效检验规则表为所述预设检验规则表中去除了标记失效时段属性的字段检验规则后的字段检验规则的组合;和/或,将所述当前的配置字段组合与第二时效检验规则表进行匹配;所述第二时效检验规则表为所述预设检验规则表中标记生效时段属性的字段检验规则的组合。
一种可选实施方式中,所述处理模块具体用于:若所述预设字段检验规则中标记了第一业务字段为所述业务信息中的必填字段,且所述业务信息未包括所述第一业务字段,或者所述第一业务字段的取值为空,则确定所述业务信息为不合法;对于第二业务字段,所述第二业务字段为在所述业务字段信息和所述预设字段检验规则中均存在的任一业务字段,若所述第二业务字段的至少一项校验中任一项校验不合法,则确定所述业务信息为不合法;所述至少一项检验包括:所述第二业务字段的取值的格式是否符合所述第二业务字段的预设格式,若不符合,则不合法;所述第二业务字段的取值的长度是否符合所述第二业务字段的预设长度,若不符合,则不合法;若所述预设字段检验规则中标记所述第二业务字段为选填字段,则确定所述第二业务字段的取值是否在所述选填字段的预设取值范围内,若不在,则不合法。
一种可选实施方式中,所述处理模块还用于:若所述当前的配置字段组合中有且仅有一个配置字段,则将所述预设检验规则表中的默认通用字段检验规则作为所述预设字段检验规则。
上述第二方面及第二方面各个实施例的有益效果,可以参考上述第一方面及第一方面各个实施例的有益效果,这里不再赘述。
第三方面,本申请实施例提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个实施例的方法。
第四方面,本申请实施例提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个实施例的方法。
附图说明
图1为本申请实施例提供的一种字段信息检验方法的步骤流程示意图;
图2为本申请实施例提供的一种字段信息的数据结构示意图;
图3为本申请实施例提供的一种字符串与子检验规则表对应关系的示意图;
图4为本申请实施例提供的一种字段信息检验方法的具体步骤流程示意图;
图5为本申请实施例提供的一种字段信息检验装置的结构示意图。
具体实施方式
为了更好的理解上述技术方案,下面将结合说明书附图及具体的实施方式对上述技术方案进行详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互结合。
为方便叙述,首先介绍本申请中出现的关键词和缩略语。
配置字段信息:用于确定字段信息匹配的预设字段检验规则,配置字段信息包括至少一个配置字段。
举例来说,配置字段信息可以包括:MERCHANT_ID:合作方平台接入本行的ID号;PS_CODE:产品类型;TXN_ID:交易码;TXN_TYPE:交易类型。
业务字段信息:字段信息中待检验的字段的组合,对业务字段信息中业务字段的字段检验规则,依赖于配置字段信息。
举例来说,业务字段信息可以包括:APP_NO:申请编号;NAME:姓名;ID_TYPE:证件提交类型。
在金融机构(银行机构、保险机构或证券机构)在进行业务(如银行的贷款业务、存款业务等)运转过程中,一些金融***需要通过对外服务接口传入字段来实现金融交易功能,由于金融交易对运行稳定性要求较高,因此需要对传入金融***的字段信息进行校验。由于各接入方的业务有所不同,同一个对外服务接口在字段信息上可能会存在或多或少的差异。现有技术中,对所有接入方的业务字段,都按照同一个通用字段校验规则,进行检验。但是对于不同接入方的同一个业务字段,对各接入方的要求不一样。显然,一个通用字段校验规则对不同接入方的字段信息检验的适应性较差。这种情况不符合银行等金融机构的需求,无法保证金融机构各项业务的高效运转。
为此,本申请实施例提供一种字段信息检验方法,如图1所示,为本申请实施例提供的一种字段信息检验方法的步骤流程示意图。需要说明的是,图1示出的方法中适用的字段信息可以为输入一个应用***接口时的接口字段,在此并不对场景做限定。图1示出的方法可用于一个***接口差异化配置和管理,对于同一***接口,可通过快速配置实现对不同接入方上送字段信息的要求进行差异化处理。
步骤101:获取字段信息。
步骤102:将所述至少一个配置字段作为当前的配置字段组合,按照预设操作获取所述当前的配置字段组合对应的预设字段检验规则。
步骤103:按照所述预设字段检验规则,对所述业务字段信息进行检验。
步骤101中,所述字段信息包括配置字段信息和业务字段信息,所述配置字段信息包括至少一个配置字段的字段信息的具体数据结构可结合图2进行详细说明,如图2所示,为本申请实施例提供的一种字段信息的数据结构示意图。图2示出的数据结构中,第1~4行的每行的栏位项目名称即为一个配置字段,1~4行的栏位项目名称组成了配置字段信息。而第5~13行的每行的栏目项目名称即为一个业务字段,第5~13行的栏目项目名称组成了业务字段信息。其中,R表示必填项,O表示选填项。
由图2可以看出,对于如下交易服务码TXN_ID为90032的接口,有两类功能,当交易类型是0时表示执行审批功能,当交易类型是1时只做信息同步。表现在字段信息上,即TXN_ID为90032的字段信息,可按照交易类型TXN_TYPE分为两类。对于同一个接口,不同的交易类型对于字段的要求存在差异,而每一种交易类型对于不同的合作方字段也会存在差异,对与同一个合作方,不同的产品类别字段也可能存在差异。因此,可根据配置字段对字段信息分类,按照相应的字段检验规则对业务字段进行检验。
步骤102中,所述预设操作为:将所述当前的配置字段组合与预设检验规则表进行匹配;所述预设检验规则表包括至少一个字段检验规则;若能匹配到字段检验规则,则将该字段检验规则作为所述预设字段检验规则输出;若不能匹配到字段检验规则,且所述当前的配置字段组合中包括至少两个配置字段,则从所述当前的配置字段组合中去除一个配置字段,并将去除了所述一个配置字段后的配置字段组合重新作为所述当前的配置字段组合,并返回所述将所述配置字段组合与预设检验规则表进行匹配的步骤。其中,从所述当前的配置字段组合中去除一个配置字段的顺序可根据预设优先级来去除。
需要说明的是,预设操作还可以包括:若所述当前的配置字段组合中有且仅有一个配置字段,则将所述预设检验规则表中的默认通用字段检验规则作为所述预设字段检验规则。
举例来说,对于配置字段组合中4个配置字段:A、B、C和D。当前的配置字段组合为ABCD。首先将ABCD与预设检验规则表匹配,若匹配不到,且预设优先级指示去除D,则当前的配置字段组合为ABC,将ABC与预设检验规则表匹配,若仍然没有匹配到,且预设优先级指示去除C,再将AB与预设检验规则表匹配,若仍然没有匹配到,且预设优先级指示去除B,则可通过以下可选实施方式确定预设字段检验规则。该可选实施方式具体为:若所述当前的配置字段组合中有且仅有一个配置字段,则将所述预设检验规则表中的默认通用字段检验规则作为所述预设字段检验规则。即当前的配置字段组合为A时,预设字段检验规则为默认通用字段检验规则。
下面结合图2,以具体例子说明步骤102的一种可选实施方式,将所述当前的配置字段组合与预设检验规则表进行匹配的一种可选实施方式如下:
按照预设映射规则,将所述当前的接口字段组合映射为字符串;从所述预设检验规则表中确定所述字符串的类型对应的子检验规则表;确定所述字符串在所述子检验规则表中是否有对应的字段检验规则。
本申请实施例的上述可选实施方式中,将TXN_ID、TXN_TYPE、MERCHANT_ID、PS_CODE这4个字段作为配置字段信息,根据上送内容的不同,可以获取到对应的预设字段检验规则。下面结合图3详细描述,如图3所示,为本申请实施例提供的一种字符串与子检验规则表对应关系的示意图。其中,INTERFACE_KEY一列表示字符串,INTERFACE_VALUE一列表示字符串的类型为TXN_ID、TXN_TYPE、MERCHANT_ID、PS_CODE映射的字符串时的子检验规则表,另外,AVAILABLE表示子检验规则表每一行中的字段检验规则是否存在,Y表示存在。
基于这种KEY,VALUE的接口配置设计,KEY值可以做到在TXN_ID、TXN_TYPE、MERCHANT_ID、PS_CODE这几个关键字段中灵活组合,比如在同一TXN_ID、TXN_TYPE下,只需要对不同的MERCHANT_ID做接口字段差异区分,不同的PS_CODE之间没有差异,则KEY值只需要包含TXN_ID、TXN_TYPE、MERCHANT_ID;同样的如果在同一TXN_ID、TXN_TYPE下不同的MERCHANT_ID之间没有差异,则KEY值只需要包含TXN_ID、TXN_TYPE即可,以此类推,如果是一个对于所有合作方和产品都通用的接口字段,那KEY值则只配置TXN_ID即可。
上述可选实施方式中,优先取最细化的KEY值进行匹配是否有对应的接口校验规则配置,即将TXN_ID、TXN_TYPE、MERCHANT_ID、PS_CODE映射为不同的字符串,如果该KEY值未匹配到规则,则根据TXN_ID、TXN_TYPE、MERCHANT_ID继续匹配,以此类推如还匹配不到,则继续使用TXN_ID、TXN_TYPE或TXN_ID去匹配,当使用TXN_ID才匹配到字段校验规则的时候,实际上等同于对该调用方不需要进行接口规则的定制化管理,使用的是默认通用接口校验规则。
后续可以持续对该字段信息检验方法进行优化,可以在预设字段校验规则配置上增加生效时段属性和失效时段属性,这样对于一些可预期的变化可以提前进行配置,将新的配置项的生效时段设置为需要的时段,并可以同样地将失效时段属性进行配置,这样到该设置的生效时段或失效时段后,旧的字段检验规则配置自动失效,服务将自动使用新的已生效的字段检验规则,这样解决了目前字段检验变更只能在指定时间(比如使用方同时配合变更的时候)进行配置变更的局限,在实际使用中更加灵活。
基于生效时段和失效时段,将当前的配置字段组合与预设检验规则表进行匹配的另一种可选实施方式如下:
所述预设检验规则表中每条字段检验规则标记了失效时段属性和/或生效时段属性,所述失效时段属性指示字段检验规则在当前时刻不可匹配,所述生效时段属性指示字段检验规则在当前时刻可匹配,所述将所述当前的配置字段组合与预设检验规则表进行匹配,还包括:将所述当前的配置字段组合与第一时效检验规则表进行匹配;所述第一时效检验规则表为所述预设检验规则表中去除了标记失效时段属性的字段检验规则后的字段检验规则的组合;和/或,将所述当前的配置字段组合与第二时效检验规则表进行匹配;所述第二时效检验规则表为所述预设检验规则表中标记生效时段属性的字段检验规则的组合。
步骤102之后,可结合预设字段校验规则对交易请求方调本***的业务信息进行合法性校验,预设字段校验规则可以使用可扩展标记语言(Extensible Markup Language,xml)的格式存放,也可以使用其他数据存储文件存放,如excel。举例来说,在excel表格中设计好每一类交易对应的业务字段的维度控制,将该excel文件放到应用服务的工程下,同时写一套解析该excel表格的文件格式和内容的模块,当应用进程启动时,通过加载该模块,将这些配置内容加载到内存中,并按照一定的方式组织起来,在请求方调用接口时,将其与请求方上送的字段信息进行匹配,也可以实现同样的效果。
预设字段校验规则包括对业务字段中每个业务字段的校验规则,举例来说,每个业务字段可以存在以下几个属性,fieldName表示该业务字段的名称,fieldType表示业务字段类型(如String、BigDecimal、Array等),fmtRegular表示业务字段格式长度,fieldLevel表示层级(正常是1层,如有数组,则数组里面的业务字段是2层,依次类推),forceExist表示该业务字段是否为必填字段(true表示该字段必须在接口请求报文中出现且有值),dic表示该业务字段为非必填字段,如果该业务字段需要对上送值进行限制,则配置,举例来说上例子表示该字段的值只能上传正常(NORMAL)或计算机指令(SUSPEND),如是其他值则为不合法;以上是取其中一个业务字段的检验规则进行详细说明,一个预设字段检验规则是多个这种字段检验规则的集合。
步骤103的一种可选实施方式如下:
若所述预设字段检验规则中标记了第一业务字段为所述业务信息中的必填字段,且所述业务信息未包括所述第一业务字段,或者所述第一业务字段的取值为空,则确定所述业务信息为不合法;对于第二业务字段,所述第二业务字段为在所述业务字段信息和所述预设字段检验规则中均存在的任一业务字段,若所述第二业务字段的至少一项校验中任一项校验不合法,则确定所述业务信息为不合法;所述至少一项检验包括:所述第二业务字段的取值的格式是否符合所述第二业务字段的预设格式,若不符合,则不合法;所述第二业务字段的取值的长度是否符合所述第二业务字段的预设长度,若不符合,则不合法;若所述预设字段检验规则中标记所述第二业务字段为选填字段,则确定所述第二业务字段的取值是否在所述选填字段的预设取值范围内,若不在,则不合法。
结合图2示出的字段信息的数据结构的示意图,上述实施方式具体过程可以包括:
(1)如果在预设字段检验规则中,是否必须存在(forceExist)配置为真(true)的业务字段,在调用方上送的字段信息中如果没有、或者有这个业务字段但是值为空的话,则返回“校验不通过,字段不能为空”的提示。
(2)如果字段信息中的业务字段在接口校验规则中不存在,则业务字段会被过滤掉,不会进入参与预设字段检验规则的检验。
(3)如果字段信息中的业务字段在接口校验规则中存在,则根据字段格式(fieldType)检验字段值的格式是否正确,如果格式正确则检验字段值长度是否符合;如检验不通过则返回“字段格式不正确”的提示。
(4)如果业务字段存在有dic配置项,则表示业务字段的值有明确的内容范围检验,业务字段上送的值必须在dic配置的范围内,如果不在范围内则检验不通过,返回“字段值不正确”的提示。
上述方法中,通过在字段信息的配置字段信息,按照预设操作获取预设字段检验规则,首先将配置字段信息与预设检验规则表进行匹配,由于当前的配置字段组合为配置字段信息时,当前的配置字段组合包括了最多的配置字段,因此与预设检验规则表匹配到的字段检验规则最适应字段信息的检验,匹配不到再将去除了一个配置字段后的配置字段组合重新作为当前的配置字段组合,与预设检验规则表进行匹配,从而找到尽可能适应字段信息的预设字段检验规则,提升了字段信息检验的适应性。另外,同一字段检验规则可根据使用方和业务场景等因素灵活变化,接口检查规则可直接快速进行适配管理,不需要在应用层进行调整。
为本申请实施例提供的一种字段信息检验方法中各可选实施方式可相互结合,举例来说,结合后的具体实施方式的步骤流程图可如图4所示,图4为本申请实施例提供的一种字段信息检验方法的具体步骤流程示意图。
如图5所示,为本申请实施例提供的一种字段信息检验装置的结构示意图。
本申请提供一种字段信息检验装置,包括:获取模块501,用于获取字段信息;所述字段信息包括配置字段信息和业务字段信息,所述配置字段信息包括至少一个配置字段;处理模块502,用于将所述至少一个配置字段作为当前的配置字段组合,按照预设操作获取所述当前的配置字段组合对应的预设字段检验规则;所述预设操作为:将所述当前的配置字段组合与预设检验规则表进行匹配;所述预设检验规则表包括至少一个字段检验规则;若能匹配到字段检验规则,则将该字段检验规则作为所述预设字段检验规则输出;若不能匹配到字段检验规则,且所述当前的配置字段组合中包括至少两个配置字段,则从所述当前的配置字段组合中去除一个配置字段,并将去除了所述一个配置字段后的配置字段组合重新作为所述当前的配置字段组合,并返回所述将所述配置字段组合与预设检验规则表进行匹配的步骤;按照所述预设字段检验规则,对所述业务字段信息进行检验。
一种可选实施方式中,所述处理模块502具体用于:按照预设映射规则,将所述当前的接口字段组合映射为字符串;从所述预设检验规则表中确定所述字符串的类型对应的子检验规则表;确定所述字符串在所述子检验规则表中是否有对应的字段检验规则。
一种可选实施方式中,所述预设检验规则表中每条字段检验规则标记了失效时段属性和/或生效时段属性,所述失效时段属性指示字段检验规则在当前时刻不可匹配,所述生效时段属性指示字段检验规则在当前时刻可匹配,所述处理模块502还用于:将所述当前的配置字段组合与第一时效检验规则表进行匹配;所述第一时效检验规则表为所述预设检验规则表中去除了标记失效时段属性的字段检验规则后的字段检验规则的组合;和/或,将所述当前的配置字段组合与第二时效检验规则表进行匹配;所述第二时效检验规则表为所述预设检验规则表中标记生效时段属性的字段检验规则的组合。
一种可选实施方式中,所述处理模块502具体用于:若所述预设字段检验规则中标记了第一业务字段为所述业务信息中的必填字段,且所述业务信息未包括所述第一业务字段,或者所述第一业务字段的取值为空,则确定所述业务信息为不合法;对于第二业务字段,所述第二业务字段为在所述业务字段信息和所述预设字段检验规则中均存在的任一业务字段,若所述第二业务字段的至少一项校验中任一项校验不合法,则确定所述业务信息为不合法;所述至少一项检验包括:所述第二业务字段的取值的格式是否符合所述第二业务字段的预设格式,若不符合,则不合法;所述第二业务字段的取值的长度是否符合所述第二业务字段的预设长度,若不符合,则不合法;若所述预设字段检验规则中标记所述第二业务字段为选填字段,则确定所述第二业务字段的取值是否在所述选填字段的预设取值范围内,若不在,则不合法。
一种可选实施方式中,所述处理模块502还用于:若所述当前的配置字段组合中有且仅有一个配置字段,则将所述预设检验规则表中的默认通用字段检验规则作为所述预设字段检验规则。
本申请实施例提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行本申请实施例提供的一种字段信息检验方法及任一可选方法。
本申请实施例提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行本申请实施例提供的一种字段信息检验方法及任一可选方法。
最后应说明的是:本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (12)
1.一种字段信息检验方法,其特征在于,包括:
获取字段信息;所述字段信息包括配置字段信息和业务字段信息,所述配置字段信息包括至少一个配置字段;
将所述至少一个配置字段作为当前的配置字段组合,按照预设操作获取所述当前的配置字段组合对应的预设字段检验规则;所述预设操作为:将所述当前的配置字段组合与预设检验规则表进行匹配;所述预设检验规则表包括至少一个字段检验规则;若能匹配到字段检验规则,则将该字段检验规则作为所述预设字段检验规则输出;若不能匹配到字段检验规则,且所述当前的配置字段组合中包括至少两个配置字段,则从所述当前的配置字段组合中去除一个配置字段,并将去除了所述一个配置字段后的配置字段组合重新作为所述当前的配置字段组合,并返回所述将所述配置字段组合与预设检验规则表进行匹配的步骤;
按照所述预设字段检验规则,对所述业务字段信息进行检验。
2.如权利要求1所述的方法,其特征在于,所述将所述当前的配置字段组合与预设检验规则表进行匹配,包括:
按照预设映射规则,将所述当前的接口字段组合映射为字符串;
从所述预设检验规则表中确定所述字符串的类型对应的子检验规则表;
确定所述字符串在所述子检验规则表中是否有对应的字段检验规则。
3.如权利要求1所述的方法,其特征在于,所述预设检验规则表中每条字段检验规则标记了失效时段属性和/或生效时段属性,所述失效时段属性指示字段检验规则在当前时刻不可匹配,所述生效时段属性指示字段检验规则在当前时刻可匹配,所述将所述当前的配置字段组合与预设检验规则表进行匹配,还包括:
将所述当前的配置字段组合与第一时效检验规则表进行匹配;所述第一时效检验规则表为所述预设检验规则表中去除了标记失效时段属性的字段检验规则后的字段检验规则的组合;
和/或,将所述当前的配置字段组合与第二时效检验规则表进行匹配;所述第二时效检验规则表为所述预设检验规则表中标记生效时段属性的字段检验规则的组合。
4.如权利要求1-3任一所述的方法,其特征在于,所述按照所述预设字段检验规则,对所述业务字段信息进行检验,包括:
若所述预设字段检验规则中标记了第一业务字段为所述业务信息中的必填字段,且所述业务信息未包括所述第一业务字段,或者所述第一业务字段的取值为空,则确定所述业务信息为不合法;
对于第二业务字段,所述第二业务字段为在所述业务字段信息和所述预设字段检验规则中均存在的任一业务字段,若所述第二业务字段的至少一项校验中任一项校验不合法,则确定所述业务信息为不合法;所述至少一项检验包括:所述第二业务字段的取值的格式是否符合所述第二业务字段的预设格式,若不符合,则不合法;所述第二业务字段的取值的长度是否符合所述第二业务字段的预设长度,若不符合,则不合法;
若所述预设字段检验规则中标记所述第二业务字段为选填字段,则确定所述第二业务字段的取值是否在所述选填字段的预设取值范围内,若不在,则不合法。
5.如权利要求1-3任一所述的方法,其特征在于,所述预设操作还包括:
若所述当前的配置字段组合中有且仅有一个配置字段,则将所述预设检验规则表中的默认通用字段检验规则作为所述预设字段检验规则。
6.一种字段信息检验装置,其特征在于,包括:
获取模块,用于获取字段信息;所述字段信息包括配置字段信息和业务字段信息,所述配置字段信息包括至少一个配置字段;
处理模块,用于将所述至少一个配置字段作为当前的配置字段组合,按照预设操作获取所述当前的配置字段组合对应的预设字段检验规则;所述预设操作为:将所述当前的配置字段组合与预设检验规则表进行匹配;所述预设检验规则表包括至少一个字段检验规则;若能匹配到字段检验规则,则将该字段检验规则作为所述预设字段检验规则输出;若不能匹配到字段检验规则,且所述当前的配置字段组合中包括至少两个配置字段,则从所述当前的配置字段组合中去除一个配置字段,并将去除了所述一个配置字段后的配置字段组合重新作为所述当前的配置字段组合,并返回所述将所述配置字段组合与预设检验规则表进行匹配的步骤;按照所述预设字段检验规则,对所述业务字段信息进行检验。
7.如权利要求6所述的装置,其特征在于,所述处理模块具体用于:
按照预设映射规则,将所述当前的接口字段组合映射为字符串;
从所述预设检验规则表中确定所述字符串的类型对应的子检验规则表;
确定所述字符串在所述子检验规则表中是否有对应的字段检验规则。
8.如权利要求6所述的装置,其特征在于,所述预设检验规则表中每条字段检验规则标记了失效时段属性和/或生效时段属性,所述失效时段属性指示字段检验规则在当前时刻不可匹配,所述生效时段属性指示字段检验规则在当前时刻可匹配,所述处理模块还用于:
将所述当前的配置字段组合与第一时效检验规则表进行匹配;所述第一时效检验规则表为所述预设检验规则表中去除了标记失效时段属性的字段检验规则后的字段检验规则的组合;
和/或,将所述当前的配置字段组合与第二时效检验规则表进行匹配;所述第二时效检验规则表为所述预设检验规则表中标记生效时段属性的字段检验规则的组合。
9.如权利要求6-8任一所述的装置,其特征在于,所述处理模块具体用于:
若所述预设字段检验规则中标记了第一业务字段为所述业务信息中的必填字段,且所述业务信息未包括所述第一业务字段,或者所述第一业务字段的取值为空,则确定所述业务信息为不合法;
对于第二业务字段,所述第二业务字段为在所述业务字段信息和所述预设字段检验规则中均存在的任一业务字段,若所述第二业务字段的至少一项校验中任一项校验不合法,则确定所述业务信息为不合法;所述至少一项检验包括:所述第二业务字段的取值的格式是否符合所述第二业务字段的预设格式,若不符合,则不合法;所述第二业务字段的取值的长度是否符合所述第二业务字段的预设长度,若不符合,则不合法;
若所述预设字段检验规则中标记所述第二业务字段为选填字段,则确定所述第二业务字段的取值是否在所述选填字段的预设取值范围内,若不在,则不合法。
10.如权利要求6-8任一所述的装置,其特征在于,所述处理模块还用于:
若所述当前的配置字段组合中有且仅有一个配置字段,则将所述预设检验规则表中的默认通用字段检验规则作为所述预设字段检验规则。
11.一种计算机设备,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至5中任意一项所述的方法被执行。
12.一种存储介质,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至5中任意一项所述的方法被执行。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910580581.3A CN110287383B (zh) | 2019-06-28 | 2019-06-28 | 一种字段信息检验方法及装置 |
PCT/CN2020/091658 WO2020259147A1 (zh) | 2019-06-28 | 2020-05-21 | 一种字段信息检验方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910580581.3A CN110287383B (zh) | 2019-06-28 | 2019-06-28 | 一种字段信息检验方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110287383A true CN110287383A (zh) | 2019-09-27 |
CN110287383B CN110287383B (zh) | 2023-06-09 |
Family
ID=68019818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910580581.3A Active CN110287383B (zh) | 2019-06-28 | 2019-06-28 | 一种字段信息检验方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110287383B (zh) |
WO (1) | WO2020259147A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704686A (zh) * | 2019-10-08 | 2020-01-17 | 北京锐安科技有限公司 | 半结构化数据的质量检测方法、装置、存储介质及设备 |
CN111159482A (zh) * | 2019-12-19 | 2020-05-15 | 贝壳技术有限公司 | 数据校验方法及*** |
CN111209538A (zh) * | 2020-01-03 | 2020-05-29 | 北京明略软件***有限公司 | 一种表数据质量探查方法及装置 |
CN111459970A (zh) * | 2020-03-31 | 2020-07-28 | 交通银行股份有限公司 | 一种对象信息唯一性的检验方法 |
CN111754232A (zh) * | 2020-06-29 | 2020-10-09 | 上海通联金融服务有限公司 | 一种在非金融交易前对关键字段进行校验的控制方法 |
CN112015728A (zh) * | 2020-09-08 | 2020-12-01 | 浙江惠瀜网络科技有限公司 | 一种自动对采集的数据进行检验的方法 |
WO2020259147A1 (zh) * | 2019-06-28 | 2020-12-30 | 深圳前海微众银行股份有限公司 | 一种字段信息检验方法及装置 |
CN112256737A (zh) * | 2020-10-30 | 2021-01-22 | 深圳前海微众银行股份有限公司 | 一种hive规则匹配数据的方法、设备及存储介质 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113065920A (zh) * | 2021-04-12 | 2021-07-02 | 北京京东振世信息技术有限公司 | 数据处理方法和*** |
CN113535776A (zh) * | 2021-05-28 | 2021-10-22 | 国网辽宁省电力有限公司 | 应用于监测装置的参数合法性校验方法及*** |
CN113268290A (zh) * | 2021-06-16 | 2021-08-17 | 中移(杭州)信息技术有限公司 | 软件容器优化方法、装置、设备及计算机程序产品 |
CN113609014A (zh) * | 2021-08-04 | 2021-11-05 | 深圳鼎盛电脑科技有限公司 | 一种接口字段校验方法、装置、存储介质及电子设备 |
CN113836126B (zh) * | 2021-09-22 | 2024-01-30 | 上海妙一生物科技有限公司 | 一种数据清洗方法、装置、设备及存储介质 |
CN114968410A (zh) * | 2022-06-06 | 2022-08-30 | 携程商旅信息服务(上海)有限公司 | 数据配置表单生成方法、***、电子设备和存储介质 |
CN116415199B (zh) * | 2023-04-13 | 2023-10-20 | 广东铭太信息科技有限公司 | 基于审计中间表的业务数据离群分析方法 |
CN116719875B (zh) * | 2023-08-09 | 2023-12-26 | 恩核(北京)信息技术有限公司 | 一种数据标准化维护方法、***、设备及介质 |
CN117151864A (zh) * | 2023-09-13 | 2023-12-01 | 中邮消费金融有限公司 | 一种自动化不良贷款责任认定方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170063696A1 (en) * | 2015-08-27 | 2017-03-02 | Hewlett Packard Enterprise Development Lp | Data packet flow rule field range of an application specific integrated circuit |
CN108132880A (zh) * | 2017-12-21 | 2018-06-08 | 武汉斑马快跑科技有限公司 | 一种参数校验方法及装置 |
CN109726370A (zh) * | 2018-12-29 | 2019-05-07 | 北京中电普华信息技术有限公司 | 一种可配置的校验规则封装方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110287383B (zh) * | 2019-06-28 | 2023-06-09 | 深圳前海微众银行股份有限公司 | 一种字段信息检验方法及装置 |
-
2019
- 2019-06-28 CN CN201910580581.3A patent/CN110287383B/zh active Active
-
2020
- 2020-05-21 WO PCT/CN2020/091658 patent/WO2020259147A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170063696A1 (en) * | 2015-08-27 | 2017-03-02 | Hewlett Packard Enterprise Development Lp | Data packet flow rule field range of an application specific integrated circuit |
CN108132880A (zh) * | 2017-12-21 | 2018-06-08 | 武汉斑马快跑科技有限公司 | 一种参数校验方法及装置 |
CN109726370A (zh) * | 2018-12-29 | 2019-05-07 | 北京中电普华信息技术有限公司 | 一种可配置的校验规则封装方法及装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020259147A1 (zh) * | 2019-06-28 | 2020-12-30 | 深圳前海微众银行股份有限公司 | 一种字段信息检验方法及装置 |
CN110704686A (zh) * | 2019-10-08 | 2020-01-17 | 北京锐安科技有限公司 | 半结构化数据的质量检测方法、装置、存储介质及设备 |
CN111159482A (zh) * | 2019-12-19 | 2020-05-15 | 贝壳技术有限公司 | 数据校验方法及*** |
CN111209538A (zh) * | 2020-01-03 | 2020-05-29 | 北京明略软件***有限公司 | 一种表数据质量探查方法及装置 |
CN111459970A (zh) * | 2020-03-31 | 2020-07-28 | 交通银行股份有限公司 | 一种对象信息唯一性的检验方法 |
CN111754232A (zh) * | 2020-06-29 | 2020-10-09 | 上海通联金融服务有限公司 | 一种在非金融交易前对关键字段进行校验的控制方法 |
CN111754232B (zh) * | 2020-06-29 | 2023-11-28 | 上海通联金融服务有限公司 | 一种在非金融交易前对关键字段进行校验的控制方法 |
CN112015728A (zh) * | 2020-09-08 | 2020-12-01 | 浙江惠瀜网络科技有限公司 | 一种自动对采集的数据进行检验的方法 |
CN112256737A (zh) * | 2020-10-30 | 2021-01-22 | 深圳前海微众银行股份有限公司 | 一种hive规则匹配数据的方法、设备及存储介质 |
CN112256737B (zh) * | 2020-10-30 | 2024-05-28 | 深圳前海微众银行股份有限公司 | 一种hive规则匹配数据的方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020259147A1 (zh) | 2020-12-30 |
CN110287383B (zh) | 2023-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287383A (zh) | 一种字段信息检验方法及装置 | |
CN107395353B (zh) | 一种区块链共识方法及装置 | |
CN108595157B (zh) | 区块链数据的处理方法、装置、设备和存储介质 | |
US8645906B2 (en) | Method for enforcing change policy based on project state | |
US20200380202A1 (en) | Systems and methods of electronic form management | |
US11093521B2 (en) | Just-in-time data quality assessment for best record creation | |
US20190124087A1 (en) | Descendent case role alias | |
CN104361119B (zh) | 一种数据清理的方法及*** | |
CN107436794A (zh) | 容器图像管理***及方法 | |
US10079858B2 (en) | Managing access in one or more computing systems | |
US20100312592A1 (en) | Confirming enforcement of business rules specified in a data access tier of a multi-tier application | |
CN110309099A (zh) | 接口管理方法、装置、设备及计算机可读存储介质 | |
CN114372006A (zh) | 测试用例自动生成方法、***、计算机设备和存储介质 | |
CN105005543A (zh) | 一种接口生成装置及方法 | |
US8566780B2 (en) | Object model based mapping | |
CN110222323A (zh) | 一种凭证生成方法、装置、可读存储介质及终端设备 | |
CN112711640A (zh) | 一种业务受理流程配置的方法及装置 | |
CN104376397B (zh) | 一种数据实时分析方法及装置 | |
Jiang et al. | What are the characteristics of reopened pull requests? a case study on open source projects in github | |
CN112085611A (zh) | 数据异步核验方法、装置、电子设备及存储介质 | |
CN108711074A (zh) | 业务分类方法、装置、服务器及可读存储介质 | |
US7904431B1 (en) | Method and system for automated request modelling | |
CN107909346A (zh) | 设计数据工艺性审查*** | |
US20080195453A1 (en) | Organisational Representational System | |
CN111090638A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |