CN115334145B - 一种业务处理方法、装置、电子设备及存储介质 - Google Patents
一种业务处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115334145B CN115334145B CN202210951392.4A CN202210951392A CN115334145B CN 115334145 B CN115334145 B CN 115334145B CN 202210951392 A CN202210951392 A CN 202210951392A CN 115334145 B CN115334145 B CN 115334145B
- Authority
- CN
- China
- Prior art keywords
- service
- verification
- structured
- service request
- logic
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title abstract description 22
- 238000012795 verification Methods 0.000 claims abstract description 133
- 238000000034 method Methods 0.000 claims abstract description 45
- 238000012545 processing Methods 0.000 claims abstract description 33
- 230000008569 process Effects 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 7
- 238000011161 development Methods 0.000 abstract description 9
- 230000008878 coupling Effects 0.000 abstract description 8
- 238000010168 coupling process Methods 0.000 abstract description 8
- 238000005859 coupling reaction Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 13
- 238000004458 analytical method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 5
- 239000010931 gold Substances 0.000 description 5
- 229910052737 gold Inorganic materials 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 238000002955 isolation Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- 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/02—Banking, e.g. interest calculation or account maintenance
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开一种业务处理方法、装置、电子设备及存储介质,属于数据处理技术领域,该方法包括:拦截客户端发送的请求联机服务的业务请求,业务请求中包括有业务参数值和联机服务标识,基于业务参数值和联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,结构化业务对象中包含有校验注解,基于预先设置的校验注解与校验逻辑之间的对应关系,确定与结构化对象中的校验注解对应的校验逻辑,基于确定的校验逻辑对结构化业务对象进行校验,基于校验结果,响应业务请求。这样,拦截业务请求,在调用联机服务之前对业务请求进行校验处理,降低了业务逻辑与校验逻辑之间的耦合度,并使得校验逻辑可复用,因此可提升开发速度。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种业务处理方法、装置、电子设备及存储介质。
背景技术
目前,在银行结算等业务场景中,客户端提交给服务器的业务请求一般都需调用联机服务进行处理,而调用联机服务后的一个重要环节就是对业务请求进行校验处理。
现有技术中,校验处理是在联机服务中实现的。由于不同类型的业务请求需调用不同的联机服务进行处理,所以各联机服务都会进行校验处理,但实际上,不同类型的业务请求有一些相同的校验逻辑,所以会出现不同联机服务中有大量类似校验代码的情况。这样,会使校验配置和检查校验都非常的不方便,从而拖慢开发速度。
因此,如何合理校验业务请求以提升开发速度是亟待解决的技术问题。
发明内容
本申请实施例提供一种业务处理方法、装置、电子设备及存储介质,用以合理校验业务请求以提升开发速度。
第一方面,本申请实施例提供一种业务处理方法,包括:
拦截客户端发送的请求调用联机服务的业务请求,所述业务请求中包括有业务参数值和联机服务标识;
基于所述业务参数值和所述联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,所述结构化业务对象中包含有校验注解;
基于预先设置的校验注解与校验逻辑之间的对应关系,确定与所述结构化对象中的校验注解对应的校验逻辑;
基于确定的校验逻辑对所述结构化业务对象进行校验;
基于校验结果,响应所述业务请求。
在一些实施例中,还包括:
在确定与所述结构化对象中的校验注解对应的校验逻辑之前,确定所述联机服务标识位于预设的联机服务标识集合中。
在一些实施例中,所述拦截客户端发送的请求调用联机服务的业务请求的步骤,至,所述基于确定的校验逻辑对所述结构化对象进行校验的步骤,是通过面向切面编程AOP技术实现的。
在一些实施例中,基于校验结果,响应所述业务请求,包括:
若校验通过,则调用所述联机服务标识对应的联机服务处理所述结构化业务对象;
若校验不通过,则拒绝所述业务请求。
在一些实施例中,还包括:
若校验不通过,则将校验不通过的原因发送给所述客户端,以触发所述客户端重新发送业务请求。
第二方面,本申请实施例提供一种业务处理装置,包括:
拦截模块,用于拦截客户端发送的请求调用联机服务的业务请求,所述业务请求中包括有业务参数值和联机服务标识;
生成模块,用于基于所述业务参数值和所述联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,所述结构化业务对象中包含有校验注解;
确定模块,用于基于预先设置的校验注解与校验逻辑之间的对应关系,确定与所述结构化对象中的校验注解对应的校验逻辑;
校验模块,用于基于确定的校验逻辑对所述结构化业务对象进行校验;
响应模块,用于基于校验结果,响应所述业务请求。
在一些实施例中,所述确定模块,还用于:
在确定与所述结构化对象中的校验注解对应的校验逻辑之前,确定所述联机服务标识位于预设的联机服务标识集合中。
在一些实施例中,所述拦截客户端发送的请求调用联机服务的业务请求的步骤,至,所述基于确定的校验逻辑对所述结构化对象进行校验的步骤,是通过面向切面编程AOP技术实现的。
在一些实施例中,所述响应模块,具体用于:
若校验通过,则调用所述联机服务标识对应的联机服务处理所述结构化业务对象;
若校验不通过,则拒绝所述业务请求。
在一些实施例中,还包括:
发送模块,用于若校验不通过,则将校验不通过的原因发送给所述客户端,以触发所述客户端重新发送业务请求。
第三方面,本申请实施例提供一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中:
存储器存储有可被至少一个处理器执行的指令,该指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述业务处理方法。
第四方面,本申请实施例提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,所述电子设备能够执行上述业务处理方法。
第五方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在被电子设备调用执行时,使得所述电子设备执行上述业务处理方法。
本申请实施例中,拦截客户端发送的请求联机服务的业务请求,业务请求中包括有业务参数值和联机服务标识,基于业务参数值和联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,结构化业务对象中包含有校验注解,基于预先设置的校验注解与校验逻辑之间的对应关系,确定与结构化对象中的校验注解对应的校验逻辑,基于确定的校验逻辑对结构化业务对象进行校验,基于校验结果,响应业务请求。这样,拦截业务请求,在调用联机服务之前对业务请求进行校验处理,不在联机服务中进行校验处理,可降低业务逻辑与校验逻辑之间的耦合度,并可使不同联机服务复用相同的校验逻辑,方便校验配置和检查校验,因此还可提升开发速度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种业务处理方法的应用场景示意图;
图2为本申请实施例提供的一种业务处理方法的流程图;
图3为本申请实施例提供的又一种业务处理方法的流程图;
图4为本申请实施例提供的一种业务处理的过程示意图;
图5为本申请实施例提供的一种业务处理装置的结构示意图;
图6为本申请实施例提供的一种用于实现业务处理方法的电子设备的硬件结构示意图。
具体实施方式
为了合理校验业务请求以提升开发速度,本申请实施例提供了一种业务处理方法、装置、电子设备及存储介质。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。并且,本申请的实施例中,对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
为了便于理解本申请,本申请涉及的技术术语中:
面向切面编程(Aspect Oriented Programming,AOP)技术,一种通过预编译和运行期间动态代理实现程序功能的技术。利用AOP技术可对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的鲁棒性和健壮性,同时利于提高开发效率。
注解,一种代码级别的说明,与类、接口、枚举在同一层次,它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明、注释。注解可包括校验注解和非校验注解,本申请实施例中的注解均是指校验注解。
联机服务,可以看作一个进程,服务器中可以有多个联机服务,不同的联机服务一般用于处理不同类型的业务请求。
图1为本申请实施例提供的一种业务处理方法的应用场景图,包括客户端101、102、103,网络104和服务器105。
网络104用以在客户端101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(WideArea Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible Markup Language,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet Protocol Security,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
客户端101、102、103可以通过网络104与其他客户端和服务器105进行交互,以接收或发送信息等,如发送业务请求和接收业务请求处理结果等。以银行业务场景为例,在银行业务场景中,客户端101、102、103可以是柜员终端、开卡设备、ATM机、电脑、便携式个人计算机等任何智能设备。任一客户端可向服务器发送资金转账、开户、销户、资金流水查询、保证金交割业等业务请求,并且接收服务器发送的业务办理结果。
其中,服务器可以是一台服务器、若干台服务器组成的服务器集群或云计算中心,服务器可以对接收到的业务请求、配置指令等进行处理,并将业务请求处理结果发送给客户端。
值得说明的是,本申请实施例中的应用场景图是为了更加清楚地说明本申请实施例中的技术方案,并不构成对本申请实施例提供的技术方案的限制,也并不仅限于银行业务处理,对于其它的应用场景和类似业务应用,本申请实施例提供的技术方案对于类似的问题同样适用。
在介绍了本申请实施例的应用场景后,下面以具体实施例对本申请提出的业务处理方法进行说明。图2为本申请实施例提供的一种业务处理方法的流程图,该方法可应用于图1的服务器中,且该方法包括以下步骤。
在步骤201中,拦截客户端发送的请求调用联机服务的业务请求,业务请求中包括有业务参数值和联机服务标识。
其中,业务参数值为业务字段的具体取值。比如在保证金交割业务中,业务字段包括交割金额(Settlement Amount)、交割日期(Settlement Date)、币种代码(Currency),则业务参数值可以是{100,2022-1-1,CNY},其中,100表示Settlement Amount的取值,2022-1-1表示Settlement Date的取值,CNY表示Currency的取值。
在步骤202中,基于业务参数值和联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,结构化业务对象中包含有校验注解。
比如,校验注解可以包括以下几种:AssertTrue,AssertFalse,Dict,Null,NotNull,NotBlank,FutureDay,Length,Max,Min,PastDay,Pattern,Precision,Range等。
其中,AssertTrue表示所注解的业务字段的取值须是布尔(Boolean)类型,且值为true;AssertFalse表示所注解的业务字段的取值须是Boolean类型,且值为false;Dict表示所注解的业务字段的取值须在给定的离散数值范围内如{1、4、6、8、10};Null表示所注解的业务字段的取值可为空;NotNull表示所注解的业务字段的取值不能为空(可以为空格);NotBlank表示所注解的业务字段的取值不能为空白(不可以为空格);FutureDay表示所注解的业务字段的取值须为一个未来日期;Length表示所注解的业务字段的取值长度;Max表示所注解的业务字段的取值的最大值;Min表示所注解的业务字段的取值的最小值;PastDay表示所注解的业务字段的取值须为一个过去日期;Pattern表示所注解的业务字段的取值须与给定的正则表达式匹配;Precision表示所注解的业务字段的取值的精度;Range表示所注解的业务字段的取值的连续数值范围如1~10。
一般地,每种联机服务都对应有结构化业务对象的生成规则。以结构化业务对象的生成规则是通过类实现的为例,类中可包含类名和多种业务字段,类名可是联机服务标识,这多种业务字段用于定义相应结构化业务对象的属性,在类中可对需要进行校验的业务字段添加校验注解。
以保证金交割业务为例,其对应的类中的业务字段包括:Settlement Amount、Settlement Date、Currency,且Settlement Date的取值不能为空,Currency的取值不能为空白,则可为Settlement Date配置NotNull校验注解,为Currency配置NotBlank校验注解。
后续,基于业务参数值和联机服务标识对应的结构化业务对象的生成规则,即可生成一个结构化业务对象。
仍以保证金交割业务为例,假设处理保证金交割业务的联机服务的联机服务标识为Service0001,那么,业务请求中携带的内容可为{Service0001:100,2022-1-1,CNY},其中,100表示Settlement Amount的取值,2022-1-1表示Settlement Date的取值,CNY表示Currency的取值。根据结构化业务对象的生成规则,生成的结构化业务对象可以为{Service0001:Settlement Amount=100,Settlement Date=2022-1-1,Currency=CNY}。
因Settlement Date和Currency是需要进行校验的字段,预先配置有校验注解,所以在生成的结构化对象中也包含有同样的校验注解:NotNull和NotBlank。
在步骤203中,基于预先设置的校验注解与校验逻辑之间的对应关系,确定与结构化对象中的校验注解对应的校验逻辑。
其中,任一校验注解对应的校验逻辑是指对该校验注解实现校验目的的代码。以AssertTrue为例,AssertTrue对应的校验逻辑即校验相应业务字段的取值是否是Boolean类型,且取值为true的代码。其他校验注解对应的校验逻辑类似,在此不再赘述。
在步骤204中,基于确定的校验逻辑对结构化业务对象进行校验。
需要说明的是,每一种校验注解对应一种校验逻辑,校验逻辑其实是对业务字段的取值进行校验,当业务请求中有多个业务字段都需要进行校验处理时,会确定出多种校验逻辑,当所有需要进行校验的业务字段的取值都校验通过时,才确定校验通过;有任一需要进行校验的业务字段的取值未校验通过,都判定校验不通过。
在步骤205中,基于校验结果,响应业务请求。
具体实施时,若校验通过,则可调用联机服务标识对应的联机服务处理结构化业务对象,即是处理业务请求;若校验不通过,则可拒绝该业务请求。
另外,若校验不通过,还可将校验不通过的原因发送给客户端,以触发客户端重新发送业务请求,其中,校验不通过的原因如不能为空、超过最大值等。
上述步骤201-步骤204其实是前置了校验过程,所以可称为前置校验服务。在一些实施例中,前置校验服务可通过AOP技术实现,这样,借助于AOP技术可将前置校验服务与联机服务隔离,降低两者之间的耦合性,也可降低对原有业务的侵入性。
本申请实施例中,可通过AOP技术拦截客户端发送的业务请求,基于业务请求中的业务参数值生成结构化业务对象,基于结构化业务对象中的校验注解对相关业务字段的取值进行前置校验服务,而不在联机服务中进行校验处理。这样,既可借助于AOP技术实现前置校验服务和联机服务的隔离,降低前置校验服务和联机服务的耦合性,还可使不同联机服务复用相同的校验逻辑,方便校验配置和检查校验,提升开发速度。
在一些实施例中,还可以联机服务为单位来选择是否需要对业务请求进行前置校验处理。参见图3,图3为本申请实施例提供的又一种业务处理方法的流程图,包括以下步骤。
在步骤301中,拦截客户端发送的请求调用联机服务的业务请求,业务请求中包括有业务参数值和联机服务标识。
在步骤302中,基于业务参数值和联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,结构化业务对象中包含有校验注解。
该步骤的实施可参见步骤202,在此不再赘述。
在步骤303中,判断业务请求中的联机服务标识是否位于预设的联机服务标识集合中,若是,则进入步骤304,若否,则进入步骤305。
在步骤304中,基于预先设置的校验注解与校验逻辑之间的对应关系,确定与结构化对象中的校验注解对应的校验逻辑。
在步骤305中,调用联机服务标识对应的联机服务对结构化业务对象进行校验处理和业务处理。
在步骤306中,基于确定的校验逻辑对结构化业务对象进行校验。
该步骤的实施可参见步骤204,在此不再赘述。
在步骤307中,判断是否校验通过,若通过,则进入步骤308,若不通过,则进入步骤309。
在步骤308中,调用联机服务标识对应的联机服务对结构化业务对象进行业务处理。
在一些实施例中,还可将处理结果发送给客户端。
在步骤309中,拒绝业务请求,并将校验不通过的原因发送至客户端,以触发客户端重新发送业务请求。
本申请实施例中,通过AOP技术拦截客户端发送的请求联机服务的业务请求,基于业务请求中的业务参数值生成结构化业务对象,当业务请求中的联机服务标识在预设的联机服务标识集合时,对结构化业务对象中添加校验注解的业务字段进行前置校验服务,当业务请求中的联机服务标识不在预设的联机服务标识集合中时,直接将结构化业务对象提交给联机服务标识对应的联机服务进行校验处理和业务处理。这样既可借助于AOP技术实现前置校验服务和联机服务的隔离,降低前置校验服务和联机服务的耦合性,还可使不同联机服务复用相同的校验逻辑,提升开发速度。另外,还可选择需要进行前置校验服务的联机服务,校验灵活性也比较好。
图4为本申请实施例提供的一种业务处理的过程示意图,包括客户端1、客户端2、客户端3……,以及服务器,服务器中有解析模块、识别校验注解模块、逻辑校验模块,以及联机服务1(Service0001)、联机服务2(Service0002)和联机服务3(Service0003),其中,解析模块、识别校验注解模块和逻辑校验模块用于进行前置校验服务,前置校验服务可通过AOP技术实现,以降低与联机服务之间的耦合性。
每个客户端发送的业务请求中有业务参数值和联机服务标识,业务请求先到达解析模块,由解析模块基于业务参数值和联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,并在确定联机服务标识在预设的联机服务标识集合中时,通知识别校验注解模块。之后,识别校验注解模块可对结构化业务对象中的校验注解进行识别,基于预先设置的校验注解与校验逻辑之间的对应关系,确定与识别的校验注解对应的校验逻辑,然后,通知逻辑校验模块确定的校验逻辑。之后,逻辑校验模块可基于相应的校验逻辑对结构化业务对象进行校验,并基于校验结果处理业务请求,比如,将结构化业务对象发送给联机服务标识对应的联机服务进行业务处理,再比如,拒绝客户端的业务请求。
假设预设的联机服务标识集合为{Service0001,Service0002},以保证金交割业务为例,假设客户端1发送的业务请求1用于请求进行保证金交割,业务请求1中携带的内容为{Service0001:100,2022-1-1,CNY},其中100表示Settlement Amount的取值,2022-1-1表示Settlement Date的取值,CNY表示Currency的取值,并且字段2022-1-1配置有NotNull校验注解,字段CNY配置有NotBlank校验注解。业务请求1先到达解析模块,解析模块基于业务请求1的业务参数值{100,2022-1-1,CNY}和联机服务标识{Service0001}对应的结构化业务对象的生成规则,生成结构化业务对象{Service0001:Settlement Amount=100,Settlement Date=2022-1-1,Currency=CNY}。因Service0001在预设的联机服务标识集合{Service0001、Service0002}中,所以可通知识别校验注解模块。之后,识别校验注解模块可对{Service0001:Settlement Amount=100,Settlement Date=2022-1-1,Currency=CNY}中的校验注解进行识别,获得2022-1-1对应的NotNull校验注解,CNY对应的NotBlank校验注解,基于预先设置的校验注解与校验逻辑之间的对应关系,确定NotNull校验注解对应的校验逻辑1,NotBlank校验注解对应的校验逻辑2,然后,通知逻辑校验模块确定的校验逻辑。之后,逻辑校验模块可基于校验逻辑1对2022-1-1进行校验得到校验结果1,基于校验逻辑2对CNY进行校验得到校验结果2,若校验结果1和校验结果2两个校验结果均通过,则确定校验通过,并将{Service0001:Settlement Amount=100,Settlement Date=2022-1-1,Currency=CNY}发送给Service0001进行业务处理。
另外,解析模块在确定联机服务标识不在预设的联机服务标识集合中时,可直接将结构化业务对象提交给联机服务标识对应的联机服务,由这个联机服务先进行校验处理再进行业务处理。
仍假设预设的联机服务标识集合为{Service0001,Service0002},以汇款业务为例,假设客户端3发送的业务请求3用于请求进行汇款,业务请求3中携带的内容为{Service0003:1111,222,100},其中,1111表示汇款账户SAccount,222表示收款账户AAccount,100表示金额Amount,业务请求3先到达解析模块,由解析模块基于业务请求3的业务参数值{1111,222,100}和联机服务标识Service0003对应的结构化业务对象的生成规则,生成一个结构化业务对象{Service0003:SAccount=1111,AAccount=2222,Settlement Amount=100},因Service0003不在预设的联机服务标识集合{Service0001、Service0002}中,所以不需要对该结构化对象进行前置校验处理,可直接将结构化业务对象提交给联机服务3,由联机服务3先进行校验处理再进行业务处理。
当本申请实施例中提供的方法以软件或硬件或软硬件结合实现的时候,电子设备中可以包括多个功能模块,每个功能模块可以包括软件、硬件或其结合。
基于相同的技术构思,本申请实施例还提供一种业务处理装置,业务处理装置解决问题的原理与上述业务处理方法相似,因此业务处理装置的实施可参见业务处理方法的实施,重复之处不再赘述。
图5为本申请实施例提供的一种业务处理装置的结构示意图,包括拦截模块501、生成模块502、确定模块503、校验模块504、响应模块505。
拦截模块501,用于拦截客户端发送的请求调用联机服务的业务请求,所述业务请求中包括有业务参数值和联机服务标识;
生成模块502,用于基于所述业务参数值和所述联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,所述结构化业务对象中包含有校验注解;
确定模块503,用于基于预先设置的校验注解与校验逻辑之间的对应关系,确定与所述结构化对象中的校验注解对应的校验逻辑;
校验模块504,用于基于确定的校验逻辑对所述结构化业务对象进行校验;
响应模块505,用于基于校验结果,响应所述业务请求。
在一些实施例中,所述确定模块503,还用于:
在确定与所述结构化对象中的校验注解对应的校验逻辑之前,确定所述联机服务标识位于预设的联机服务标识集合中。
在一些实施例中,所述拦截客户端发送的请求调用联机服务的业务请求的步骤,至,所述基于确定的校验逻辑对所述结构化对象进行校验的步骤,是通过面向切面编程AOP技术实现的。
在一些实施例中,所述响应模块505,具体用于:
若校验通过,则调用所述联机服务标识对应的联机服务处理所述结构化业务对象;
若校验不通过,则拒绝所述业务请求。
在一些实施例中,还包括:
发送模块506,用于若校验不通过,则将校验不通过的原因发送给所述客户端,以触发所述客户端重新发送业务请求。
本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,本申请各实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。各个模块相互之间的耦合可以是通过一些接口实现,这些接口通常是电性通信接口,但是也不排除可能是机械接口或其它的形式接口。因此,作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方,也可以分布到同一个或不同设备的不同位置上。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
在介绍了本申请示例性实施方式的业务处理方法和装置之后,接下来,介绍根据本申请的另一示例性实施方式的电子设备。
在一些可能的实施方式中,本申请的电子设备可以至少包括至少一个处理器、以及至少一个存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行本说明书上述描述的根据本申请各种示例性实施方式的方法。
下面参照图6来描述根据本申请的这种实施方式实现的电子设备130。图6显示的电子设备130仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,电子设备130以通用电子设备的形式表现。电子设备130的组件可以包括但不限于:上述至少一个处理器131、上述至少一个存储器132、连接不同系统组件(包括存储器132和处理器131)的总线133。
总线133表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器132可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)1321和/或高速缓存存储器1322,还可以进一步包括只读存储器(ROM)1323。
存储器132还可以包括具有一组(至少一个)程序模块1324的程序/实用工具1325,这样的程序模块1324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备130也可以与一个或多个外部设备134(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与电子设备130交互的设备通信,和/或与使得该电子设备130能与一个或多个其它电子设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口135进行。并且,电子设备130还可以通过网络适配器136与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器136通过总线133与用于电子设备130的其它模块通信。应当理解,尽管图中未示出,可以结合电子设备130使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器132,上述指令可由处理器131执行以完成上述业务处理方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供一种计算机程序产品,当计算机程序产品在被电子设备调用执行时,使得所述电子设备执行本申请提供的任一示例性方法。
并且,计算机程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、RAM、ROM、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、闪存、光纤、光盘只读存储器(Compact Disk Read Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请实施例中用于业务处理的程序产品可以采用CD-ROM并包括程序代码,并可以在计算设备上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络如局域网(Local AreaNetwork,LAN)或广域网(Wide Area Network,WAN)连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种业务处理方法,其特征在于,包括:
拦截客户端发送的请求调用联机服务的业务请求,所述业务请求中包括有业务参数值和联机服务标识;
基于所述业务参数值和所述联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,所述结构化业务对象中包含有校验注解;
基于预先设置的校验注解与校验逻辑之间的对应关系,确定与所述结构化业务对象中的校验注解对应的校验逻辑;
基于确定的校验逻辑对所述结构化业务对象进行校验;
基于校验结果,响应所述业务请求;
所述拦截客户端发送的请求调用联机服务的业务请求的步骤,至,所述基于确定的校验逻辑对所述结构化业务对象进行校验的步骤,是通过面向切面编程AOP技术实现的。
2.如权利要求1所述的方法,其特征在于,还包括:
在确定与所述结构化业务对象中的校验注解对应的校验逻辑之前,确定所述联机服务标识位于预设的联机服务标识集合中。
3.如权利要求1所述的方法,其特征在于,基于校验结果,响应所述业务请求,包括:
若校验通过,则调用所述联机服务标识对应的联机服务处理所述结构化业务对象;
若校验不通过,则拒绝所述业务请求。
4.如权利要求3所述的方法,其特征在于,还包括:
若校验不通过,则将校验不通过的原因发送给所述客户端,以触发所述客户端重新发送业务请求。
5.一种业务处理装置,其特征在于,包括:
拦截模块,用于拦截客户端发送的请求调用联机服务的业务请求,所述业务请求中包括有业务参数值和联机服务标识;
生成模块,用于基于所述业务参数值和所述联机服务标识对应的结构化业务对象的生成规则,生成一个结构化业务对象,所述结构化业务对象中包含有校验注解;
确定模块,用于基于预先设置的校验注解与校验逻辑之间的对应关系,确定与所述结构化业务对象中的校验注解对应的校验逻辑;
校验模块,用于基于确定的校验逻辑对所述结构化业务对象进行校验;
响应模块,用于基于校验结果,响应所述业务请求;
所述拦截客户端发送的请求调用联机服务的业务请求的步骤,至,所述基于确定的校验逻辑对所述结构化业务对象进行校验的步骤,是通过面向切面编程AOP技术实现的。
6.如权利要求5所述的装置,其特征在于,所述确定模块,还用于:
在确定与所述结构化业务对象中的校验注解对应的校验逻辑之前,确定所述联机服务标识位于预设的联机服务标识集合中。
7.如权利要求5所述的装置,其特征在于,所述响应模块,具体用于:
若校验通过,则调用所述联机服务标识对应的联机服务处理所述结构化业务对象;
若校验不通过,则拒绝所述业务请求。
8.如权利要求7所述的装置,其特征在于,还包括:
发送模块,用于若校验不通过,则将校验不通过的原因发送给所述客户端,以触发所述客户端重新发送业务请求。
9.一种电子设备,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中:
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-4任一所述的方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,所述电子设备能够执行如权利要求1-4任一所述的方法。
11.一种计算机程序产品,其特征在于,当计算机程序产品在被电子设备调用执行时,使得所述电子设备执行如权利要求1-4任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210951392.4A CN115334145B (zh) | 2022-08-09 | 2022-08-09 | 一种业务处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210951392.4A CN115334145B (zh) | 2022-08-09 | 2022-08-09 | 一种业务处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115334145A CN115334145A (zh) | 2022-11-11 |
CN115334145B true CN115334145B (zh) | 2024-04-12 |
Family
ID=83921929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210951392.4A Active CN115334145B (zh) | 2022-08-09 | 2022-08-09 | 一种业务处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115334145B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116346961B (zh) * | 2023-05-30 | 2023-09-05 | 成方金融科技有限公司 | 金融报文处理方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765422A (zh) * | 2018-07-25 | 2020-02-07 | 北京京东尚科信息技术有限公司 | 一种参数校验方法和装置 |
CN113722733A (zh) * | 2021-08-27 | 2021-11-30 | 北京航天云路有限公司 | 一种基于Java注解实现的数据访问权限控制方法 |
CN114091099A (zh) * | 2021-11-19 | 2022-02-25 | 浪潮卓数大数据产业发展有限公司 | 一种针对业务系统的权限分级控制方法、设备及存储介质 |
CN114443678A (zh) * | 2022-01-30 | 2022-05-06 | 中国农业银行股份有限公司 | 一种数据校验方法、系统及存储介质 |
CN114443039A (zh) * | 2020-10-30 | 2022-05-06 | 中移(苏州)软件技术有限公司 | 输入参数校验方法、装置、电子设备及存储介质 |
WO2022126966A1 (zh) * | 2020-12-15 | 2022-06-23 | 平安科技(深圳)有限公司 | 接口参数校验与转换方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11700221B2 (en) * | 2018-05-17 | 2023-07-11 | Honeywell International Inc. | Rule-based annotation service in a cloud platform |
-
2022
- 2022-08-09 CN CN202210951392.4A patent/CN115334145B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765422A (zh) * | 2018-07-25 | 2020-02-07 | 北京京东尚科信息技术有限公司 | 一种参数校验方法和装置 |
CN114443039A (zh) * | 2020-10-30 | 2022-05-06 | 中移(苏州)软件技术有限公司 | 输入参数校验方法、装置、电子设备及存储介质 |
WO2022126966A1 (zh) * | 2020-12-15 | 2022-06-23 | 平安科技(深圳)有限公司 | 接口参数校验与转换方法、装置、设备及存储介质 |
CN113722733A (zh) * | 2021-08-27 | 2021-11-30 | 北京航天云路有限公司 | 一种基于Java注解实现的数据访问权限控制方法 |
CN114091099A (zh) * | 2021-11-19 | 2022-02-25 | 浪潮卓数大数据产业发展有限公司 | 一种针对业务系统的权限分级控制方法、设备及存储介质 |
CN114443678A (zh) * | 2022-01-30 | 2022-05-06 | 中国农业银行股份有限公司 | 一种数据校验方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115334145A (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110493007B (zh) | 一种基于区块链的信息验证方法、装置、设备及存储介质 | |
CN111492624B (zh) | 用于控制和/或监控装置的方法和控制系统 | |
CN108305170A (zh) | 基于区块链的外部服务访问方法、系统、设备及存储介质 | |
CN112506747B (zh) | 一种业务进程监控方法、装置、电子设备及存储介质 | |
US7949788B2 (en) | Apparatus, systems and methods for transformation services | |
US20190019186A1 (en) | Systems and methods for automated decentralized multilateral transaction processing | |
CN110838065A (zh) | 一种交易数据处理方法及装置 | |
CN111819589B (zh) | 用于建立共同请求处理的系统和方法 | |
CN112202705A (zh) | 一种数字验签生成和校验方法、系统 | |
US8875227B2 (en) | Privacy aware authenticated map-reduce | |
CN110084600B (zh) | 决议事务请求的处理、验证方法、装置、设备及介质 | |
CN112313908B (zh) | 用于控制和/或监控装置的方法和控制系统 | |
CN115334145B (zh) | 一种业务处理方法、装置、电子设备及存储介质 | |
CN111492355A (zh) | 用于控制和/或监控装置的方法和控制系统 | |
CN111240862A (zh) | 一种通用接口平台以及数据转换方法 | |
CN103907143A (zh) | 使用无标签数据交换格式进行金融交易通信的系统和方法 | |
CN114567643A (zh) | 跨区块链的数据流转方法、装置及相关设备 | |
CN113849789A (zh) | 基于aop的权限校验方法、装置、设备及存储介质 | |
CN113742235A (zh) | 一种校验代码的方法和装置 | |
CN113592645A (zh) | 数据验证的方法和装置 | |
CN117032727B (zh) | 基于区块链的文件编译方法、装置、设备、介质及产品 | |
CN111782990B (zh) | 接口封装处理方法、装置及系统 | |
CN111985922B (zh) | 基于区块链离线支付的信息分配方法及数字金融服务平台 | |
CN116723040A (zh) | 一种业务处理方法和装置 | |
CN112437052A (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 |