CN114579464A - 基于切面编程的动态信息校验方法、装置和计算机设备 - Google Patents
基于切面编程的动态信息校验方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN114579464A CN114579464A CN202210242233.7A CN202210242233A CN114579464A CN 114579464 A CN114579464 A CN 114579464A CN 202210242233 A CN202210242233 A CN 202210242233A CN 114579464 A CN114579464 A CN 114579464A
- Authority
- CN
- China
- Prior art keywords
- class
- verification
- interface
- interface class
- partner
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3616—Software analysis for verifying properties of programs using software metrics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请涉及一种基于切面编程的动态信息校验方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;若校验结果为通过,对接口类调用成功,返回至连接点。采用本方法能够减少项目中数据合规性检验的代码量,在检验规则变化时能动态生效、实时上线。
Description
技术领域
本申请涉及信息安全技术领域,特别是涉及一种基于切面编程的动态信息校验方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
软件系统研发过程中,为了保证系统的稳定运行,一般的数据类都有自己的数据合规性检查,如一个Person类,它的年龄属性是int型,但是如果给它赋值1000则为不合法,一个人不可能活那么长时间。银行系统提供数据接口给合作方调用时,涉及合作方传入的数据信息需要做合规性校验,通常的做法是针对校验规则,各接口需要各自编码判断字段的合法性,以确保不会有异常数据进入系统,影响系统的正常运行。
然而,这种方法存在一些弊端。首先是各个接口自己对输入参数进行合规性校验工作量很大,项目后期接口数量众多,代码量很大;另外,存在校验规则变化时,又涉及大量校验代码修改的情况,人力物力投入量大,项目维护成本高。因此,现有的信息校验存在着工作量大,校验效率低的技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高校验效率的基于切面编程的动态信息校验方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种基于切面编程的动态信息校验方法。所述方法包括:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
在其中一个实施例中,所述通过预先定义的切点切入想要调用的接口类之前还包括:
分别编写合作方入参实体类、合作方想要调用的接口类以及切面类。
在其中一个实施例中,所述若校验结果为通过,对接口类调用成功,返回至连接点包括:
若校验结果为不通过,对接口类调用失败,返回错误提示信息。
在其中一个实施例中,所述分别编写合作方入参实体类、合作方想要调用的接口类以及切面类包括:
编写合作方入参实体类;所述合作方入参实体类中包含不少于一项成员属性;所述成员属性上采用注解的方式进行数据的校验规则定义;
编写合作方想要调用的接口类以及切面类;所述切面类中包含预先定义的切点。
在其中一个实施例中,所述若校验结果为通过,对接口类调用成功,返回至连接点之后还包括:
若对待校验信息进行校验的校验规则发生变化,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效。
第二方面,本申请还提供了一种基于切面编程的动态信息校验装置。所述装置包括:
切入模块,用于通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
校验模块,用于根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
调用模块,用于若校验结果为通过,对接口类调用成功,返回至连接点。
在其中一个实施例中,所述调用模块具体用于:当校验结果为不通过时,对接口类调用失败,返回错误提示信息。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
上述基于切面编程的动态信息校验方法、装置、计算机设备、存储介质和计算机程序产品,通过预先定义的切点切入想要调用的接口类;其中,切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。通过切面方面对接口入参进行数据合法性校验,校验过程对接口透明,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
附图说明
图1为一个实施例中基于切面编程的动态信息校验方法的应用环境图;
图2为一个实施例中基于切面编程的动态信息校验方法的流程示意图;
图3为一个实施例中进行动态信息校验以及调用步骤的流程示意图;
图4为一个实施例中基于切面编程的动态信息校验装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的基于切面编程的动态信息校验方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。例如,服务器104通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;若校验结果为通过,对接口类调用成功,返回至连接点。
本实施例中的基于切面编程的动态信息校验方法,能够针对各接口的规则检验通过切面方面对接口实现透明,通过配置实现规则检验无需各接口各自编码,并在检验规则变化时能动态生效、实时上线。通过配置实现规则检验而无需各接口各自编码,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了;检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线。降低项目的代码冗余度,提高系统的运维效率。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种基于切面编程的动态信息校验方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法。
其中,面向切面编程,是通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。
具体地,通过预先定义的切点切入想要调用的接口类;其中切点设置于预设的切面类中,切面类中的切点中定义有环绕型切面处理的方法,环绕型切面处理的方法用于进行对数据校验结果的分析。如果存在校验失败的错误信息,那么方法返回错误提示,如果校验正常,方法则返回到连接点,程序继续向下执行,合作方成功调用接口中的方法。
步骤204,根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果。
具体地,校验规则设置于预先定义的一个合作方信息实体类中,合作方信息实体类中包括了一些成员属性,成员属性上采用注解的方式进行数据的校验规则定义。当需要修改校验规则时,只需要修改合作方入参实体类中成员属性上的校验规则配置,就能够实现接口调用规则的动态生效,无需进行大量的代码修改工作;其中,成员属性上的校验规则配置设置于合作方入参实体类中,合作方入参实体类是一类设置校验规则配置以及合作方成员属性的类的统称,其具体名称不受本实施例中限制。通过切点中定义的环绕型切面处理的方法判断校验结果是否通过。
步骤206,若校验结果为通过,对接口类调用成功,返回至连接点。
具体地,若校验结果为通过,对接口类调用成功,返回至连接点;其中,校验结果是根据预先设置的校验规则对待校验信息进行校验获取的,包括校验通过和校验不通过。当校验通过时,返回至连接点,对接口类调用成功;但校验不通过时,返回错误提示信息,对接口类调用失败。
上述基于切面编程的动态信息校验方法中,通过预先定义的切点切入想要调用的接口类;其中,切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。通过切面方面对接口入参进行数据合法性校验,校验过程对接口透明,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
在一个实施例中,所述通过预先定义的切点切入想要调用的接口类之前还包括:
分别编写合作方入参实体类、合作方想要调用的接口类以及切面类。
具体地,合作方入参实体类中包括了一些成员属性,成员属性上采用注解的方式进行数据的校验规则定义;当需要修改校验规则时,只需要修改合作方入参实体类中成员属性上的校验规则配置,就能够实现接口调用规则的动态生效,无需进行大量的代码修改工作。其中,成员属性上的校验规则配置设置于合作方入参实体类中,合作方入参实体类是一类设置校验规则配置以及合作方成员属性的类的统称,其具体名称不受本实施例中限制。编写合作方想要调用的接口类时,在实际要访问的方法上加上注解,通过该注解标识入参需要进行数据合规性检验。切面类中包含切点,切点中定义有环绕型切面处理的方法,环绕型切面处理的方法用于进行对数据校验结果的分析。
本实施例中,通过分别编写合作方入参实体类、合作方想要调用的接口类以及切面类,并采用切面的方式进行参数数据的合法性验证,约束数据的范围,避免系统中出现异常数据,导致系统漏洞,在实现数据合规性检验的同时提高项目的运维效率。
在一个实施例中,所述基于切面编程的动态信息校验方法还包括:
若校验结果为不通过,对接口类调用失败,返回错误提示信息。
具体地,切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。若校验结果为通过,对接口类调用成功,返回至连接点时,根据校验结果,当校验结果为不通过时,返回错误提示信息,此时对接口类调用失败。切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。若校验结果为通过,对接口类调用成功,返回至连接点时,当校验结果为通过时,程序返回至连接点,程序继续向下执行,对接口类调用成功。
本实施例中,若校验结果为通过,对接口类调用成功,返回至连接点,当校验结果为通过时,返回至连接点,对接口类调用成功,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。
在一个实施例中,所述分别编写合作方入参实体类、合作方想要调用的接口类以及切面类包括:
编写合作方入参实体类;所述合作方入参实体类中包含不少于一项成员属性;所述成员属性上采用注解的方式进行数据的校验规则定义;
编写合作方想要调用的接口类以及切面类;所述切面类中包含预先定义的切点。
具体地,编写合作方入参实体类、合作方想要调用的接口类以及切面类时,编写合作方入参实体类;其中,合作方入参实体类中包含不少于一项成员属性,成员属性上采用注解的方式进行数据的校验规则定义;当需要修改校验规则时,只需要修改合作方入参实体类中成员属性上的校验规则配置,就能够实现接口调用规则的动态生效,无需进行大量的代码修改工作。编写合作方想要调用的接口类时,在实际要访问的方法上加上注解,通过该注解标识入参需要进行数据合规性检验。切面类中包含切点,切点中定义有环绕型切面处理的方法,环绕型切面处理的方法用于进行对数据校验结果的分析。
本实施例中,通过编写合作方入参实体类,其中合作方入参实体类中包含不少于一项成员属性,成员属性上采用注解的方式进行数据的校验规则定义;以及编写合作方想要调用的接口类以及切面类,切面类中包含预先定义的切点,实现了当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
在一个实施例中,所述若校验结果为通过,对接口类调用成功,返回至连接点之后还包括:
若对待校验信息进行校验的校验规则发生变化,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效。
具体地,若校验结果为通过,对接口类调用成功,返回至连接点之后,当对待校验信息进行校验的校验规则发生变化时,修改合作方入参实体类中成员属性上的校验规则配置,通过对校验规则的修改实现接口调用规则的动态生效。
本实施例中,当对待校验信息进行校验的校验规则发生变化时,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效,通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
图3为一个实施例中进行动态信息校验以及调用步骤的流程示意图,如图3所示,通过预先定义的切点切入想要调用的接口类;其中切点设置于预设的切面类中,切面类中的切点中定义有环绕型切面处理的方法,环绕型切面处理的方法用于进行对数据校验结果的分析。如果存在校验失败的错误信息,那么方法返回错误提示,如果校验正常,方法则返回到连接点,程序继续向下执行,合作方成功调用接口中的方法。校验规则设置于预先定义的一个合作方信息实体类中,合作方信息实体类中包括了一些成员属性,成员属性上采用注解的方式进行数据的校验规则定义。当需要修改校验规则时,只需要修改合作方入参实体类中成员属性上的校验规则配置,就能够实现接口调用规则的动态生效,无需进行大量的代码修改工作。通过切点中定义的环绕型切面处理的方法判断校验结果是否通过。若校验结果为通过,对接口类调用成功,返回至连接点;其中,校验结果是根据预先设置的校验规则对待校验信息进行校验获取的,包括校验通过和校验不通过。当校验通过时,返回至连接点,对接口类调用成功;但校验不通过时,返回错误提示信息,对接口类调用失败。
本实施例中的基于切面编程的动态信息校验方法,能够针对各接口的规则检验通过切面方面对接口实现透明,通过配置实现规则检验无需各接口各自编码,并在检验规则变化时能动态生效、实时上线。通过配置实现规则检验而无需各接口各自编码,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了;检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线。降低项目的代码冗余度,提高系统的运维效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的基于切面编程的动态信息校验方法的基于切面编程的动态信息校验装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个基于切面编程的动态信息校验装置实施例中的具体限定可以参见上文中对于基于切面编程的动态信息校验方法的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种基于切面编程的动态信息校验装置,包括:切入模块401、校验模块402和调用模块403,其中:
切入模块401,用于通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法。
校验模块402,用于根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果。
调用模块403,用于当校验结果为通过时,对接口类调用成功,返回至连接点。
在一个实施例中,所述切入模块401还用于:分别编写合作方入参实体类、合作方想要调用的接口类以及切面类。
通过分别编写合作方入参实体类、合作方想要调用的接口类以及切面类,并采用切面的方式进行参数数据的合法性验证,约束数据的范围,避免系统中出现异常数据,导致系统漏洞,在实现数据合规性检验的同时提高项目的运维效率。
在一个实施例中,所述调用模块403具体用于:若校验结果为不通过,对接口类调用失败,返回错误提示信息。
若校验结果为通过,对接口类调用成功,返回至连接点,若校验结果为不通过,返回错误提示信息,对接口类调用失败。通过切面方面对接口入参进行数据合法性校验,校验过程对接口透明,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。
在一个实施例中,所述切入模块401具体用于:编写合作方入参实体类;所述合作方入参实体类中包含不少于一项成员属性;所述成员属性上采用注解的方式进行数据的校验规则定义;编写合作方想要调用的接口类以及切面类;所述切面类中包含预先定义的切点。
通过编写合作方入参实体类,其中合作方入参实体类中包含不少于一项成员属性,成员属性上采用注解的方式进行数据的校验规则定义;以及编写合作方想要调用的接口类以及切面类,切面类中包含预先定义的切点,实现了当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
在一个实施例中,所述调用模块403还用于:若对待校验信息进行校验的校验规则发生变化,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效。
当对待校验信息进行校验的校验规则发生变化时,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效,通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
上述基于切面编程的动态信息校验装置,通过预先定义的切点切入想要调用的接口类;其中,切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。通过切面方面对接口入参进行数据合法性校验,校验过程对接口透明,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
上述基于切面编程的动态信息校验装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于切面编程的动态信息校验方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:分别编写合作方入参实体类、合作方想要调用的接口类以及切面类。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:若校验结果为不通过,对接口类调用失败,返回错误提示信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:编写合作方入参实体类;所述合作方入参实体类中包含不少于一项成员属性;所述成员属性上采用注解的方式进行数据的校验规则定义;编写合作方想要调用的接口类以及切面类;所述切面类中包含预先定义的切点。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:若对待校验信息进行校验的校验规则发生变化,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效。
上述计算机设备,通过预先定义的切点切入想要调用的接口类;其中,切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。通过切面方面对接口入参进行数据合法性校验,校验过程对接口透明,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:分别编写合作方入参实体类、合作方想要调用的接口类以及切面类。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若校验结果为不通过,对接口类调用失败,返回错误提示信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:编写合作方入参实体类;所述合作方入参实体类中包含不少于一项成员属性;所述成员属性上采用注解的方式进行数据的校验规则定义;编写合作方想要调用的接口类以及切面类;所述切面类中包含预先定义的切点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若对待校验信息进行校验的校验规则发生变化,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效。
上述存储介质,通过预先定义的切点切入想要调用的接口类;其中,切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。通过切面方面对接口入参进行数据合法性校验,校验过程对接口透明,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:分别编写合作方入参实体类、合作方想要调用的接口类以及切面类。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若校验结果为不通过,对接口类调用失败,返回错误提示信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:编写合作方入参实体类;所述合作方入参实体类中包含不少于一项成员属性;所述成员属性上采用注解的方式进行数据的校验规则定义;编写合作方想要调用的接口类以及切面类;所述切面类中包含预先定义的切点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若对待校验信息进行校验的校验规则发生变化,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效。
上述计算机程序产品,通过预先定义的切点切入想要调用的接口类;其中,切点中定义有环绕型切面处理的方法,根据预先设置的校验规则对待校验信息进行校验,基于环绕型切面处理的方法判断校验结果是否通过,最后若校验结果为通过,对接口类调用成功,返回至连接点。通过切面方面对接口入参进行数据合法性校验,校验过程对接口透明,减少了项目中数据合规性检验的代码量,程序业务流程更为清晰明了。当检验规则发生变化时,可以通过修改配置快速、有效地适应新的需求,实现项目系统的动态生效、实时上线,并能够降低项目的代码冗余度,提高系统的运维效率。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于切面编程的动态信息校验方法,其特征在于,所述方法包括:
通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
若校验结果为通过,对接口类调用成功,返回至连接点。
2.根据权利要求1所述的方法,其特征在于,所述通过预先定义的切点切入想要调用的接口类之前还包括:
分别编写合作方入参实体类、合作方想要调用的接口类以及切面类。
3.根据权利要求2所述的方法,其特征在于,所述基于切面编程的动态信息校验方法还包括:
若校验结果为不通过,对接口类调用失败,返回错误提示信息。
4.根据权利要求2所述的方法,其特征在于,所述分别编写合作方入参实体类、合作方想要调用的接口类以及切面类包括:
编写合作方入参实体类;所述合作方入参实体类中包含不少于一项成员属性;所述成员属性上采用注解的方式进行数据的校验规则定义;
编写合作方想要调用的接口类以及切面类;所述切面类中包含预先定义的切点。
5.根据权利要求4所述的方法,其特征在于,所述若校验结果为通过,对接口类调用成功,返回至连接点之后还包括:
若对待校验信息进行校验的校验规则发生变化,修改所述合作方入参实体类中成员属性上的校验规则配置,实现接口调用规则的动态生效。
6.一种基于切面编程的动态信息校验装置,其特征在于,所述装置包括:
切入模块,用于通过预先定义的切点切入想要调用的接口类;所述切点中定义有环绕型切面处理的方法;
校验模块,用于根据预先设置的校验规则对待校验信息进行校验,基于所述环绕型切面处理的方法判断校验结果;
调用模块,用于当校验结果为通过时,对接口类调用成功,返回至连接点。
7.根据权利要求6所述的装置,其特征在于,所述调用模块还用于:
当校验结果为不通过时,对接口类调用失败,返回错误提示信息。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210242233.7A CN114579464A (zh) | 2022-03-11 | 2022-03-11 | 基于切面编程的动态信息校验方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210242233.7A CN114579464A (zh) | 2022-03-11 | 2022-03-11 | 基于切面编程的动态信息校验方法、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114579464A true CN114579464A (zh) | 2022-06-03 |
Family
ID=81774651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210242233.7A Pending CN114579464A (zh) | 2022-03-11 | 2022-03-11 | 基于切面编程的动态信息校验方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114579464A (zh) |
-
2022
- 2022-03-11 CN CN202210242233.7A patent/CN114579464A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108462760B (zh) | 电子装置、集群访问域名自动生成方法及存储介质 | |
US11115804B2 (en) | Subscription to dependencies in smart contracts | |
WO2019104891A1 (zh) | 报表导入导出的方法、装置、存储介质及终端 | |
CN110995825A (zh) | 一种智能合约的发布方法、智能节点设备及存储介质 | |
CN112817935A (zh) | 基于字段类型的数据处理方法、装置、设备及存储介质 | |
CN112306648B (zh) | 事务调用方法、装置、电子设备及存储介质 | |
WO2021174882A1 (zh) | 数据分片校验方法、装置、计算机设备及可读存储介质 | |
CN111522881B (zh) | 业务数据处理方法、装置、服务器及存储介质 | |
CN114579464A (zh) | 基于切面编程的动态信息校验方法、装置和计算机设备 | |
CN113112270B (zh) | 基于区块链的数据组织方法 | |
CN114416530A (zh) | 字节码修改方法、装置、计算机设备和存储介质 | |
CN114637672A (zh) | 自动化数据测试方法、装置、计算机设备及存储介质 | |
CN110532533B (zh) | 表格精度配置化方法、装置、计算机设备以及存储介质 | |
CN114253599A (zh) | 版本部署方法、版本部署装置、电子设备和存储介质 | |
CN111752600A (zh) | 代码异常检测方法、装置、计算机设备及存储介质 | |
CN112052034B (zh) | 计算接口构建方法、装置、计算机设备及可读存储介质 | |
CN112699023B (zh) | 项目接口测试方法、装置、计算机设备及存储介质 | |
CN113779132B (zh) | 一种数据导入的方法、装置、计算机设备和存储介质 | |
CN112100249B (zh) | 一种数据挖掘方法及系统 | |
CN116560856A (zh) | 资源交互任务的校验方法、装置、设备及存储介质 | |
CN116610354A (zh) | 参数校验方法、装置、计算机设备及存储介质 | |
CN117591260A (zh) | 任务执行方法、装置、设备、存储介质及程序产品 | |
CN117312139A (zh) | 业务测试方法、装置、计算机设备和存储介质 | |
CN111639084A (zh) | 动态规则生成方法、系统以及应用终端、管理终端 | |
CN116451965A (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 |