CN111831365A - 接口路由转发方法、***、计算机设备及可读存储介质 - Google Patents

接口路由转发方法、***、计算机设备及可读存储介质 Download PDF

Info

Publication number
CN111831365A
CN111831365A CN202010743270.7A CN202010743270A CN111831365A CN 111831365 A CN111831365 A CN 111831365A CN 202010743270 A CN202010743270 A CN 202010743270A CN 111831365 A CN111831365 A CN 111831365A
Authority
CN
China
Prior art keywords
service
class object
service implementation
interface
implementation class
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
CN202010743270.7A
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.)
Ping An Property and Casualty Insurance Company of China Ltd
Original Assignee
Ping An Property and Casualty Insurance Company of China 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 Ping An Property and Casualty Insurance Company of China Ltd filed Critical Ping An Property and Casualty Insurance Company of China Ltd
Priority to CN202010743270.7A priority Critical patent/CN111831365A/zh
Publication of CN111831365A publication Critical patent/CN111831365A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明实施例提供了一种接口路由转发方法,所述方法包括:通过统一接口路径层接收前端发送的请求;通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类中;通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象;通过所述统一接口路径层接收所述工厂类返回的业务实现类对象;及通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。本发明实施例代码架构清晰、冗余代码少、***安全性高、开发成本低、容错率高和易于后台管理。

Description

接口路由转发方法、***、计算机设备及可读存储介质
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种接口路由转发方法、***、设备及计算机可读存储介质。
背景技术
为提升用户体验,开发人员往往需要提供大量定制化服务。以金融业为例,需要开发大量业务逻辑来满足不同客户需求。但是,所开发的大量业务逻辑容易被一些不法分子用于诈骗活动等。因此,在业务逻辑开发过程中,为保证在和用户交互过程中的内容符合互联网发展规范,往往都需要后台具备对应的内容审核和操作功能,保证内容的准确性和时效性。
通过接口承接上游***传递过来的客户数据并进行数据维护时,通常都会有相似的业务功能,比如对某个类型数据的增加、删除、查找和修改。如果业务***中存在多种数据类型,现有解决方案是为各种数据类型开发一套专属接口,从而导致了代码架构异常混乱以及代码冗余,且,在接口规范层面上,过多地暴露接口不利于***安全,也增加了前后端的开发成本,降低了***的容错率。另外,不同开发人员的开发风格参差不齐,为后台管理带来了一定的挑战。
发明内容
本发明实施例的目的是提供一种接口路由转发方法、***、计算机设备及计算机可读存储介质,用于解决代码架构异常混乱、代码冗余、***安全性低、开发成本高、容错率低和后台管理困难的问题。
本发明实施例的一个方面提供了一种接口路由转发方法,所述方法包括:通过统一接口路径层接收前端发送的请求;通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类中;通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象;通过所述统一接口路径层接收所述工厂类返回的业务实现类对象;及通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。
可选的,所述通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类的步骤,还包括:解析所述请求,以得到多个业务参数;校验各个业务参数是否合法;如果存在不合法的业务参数,则返回报错信息;及如果各个业务参数均是合法参数,则检验完毕,并将所述多个业务参数中的第一预设业务参数传递到所述工厂类中。
可选的,所述工厂类预先配置有多个工厂方法,所述工厂方法用于根据所传入的业务参数创建相应的业务实现类对象。
可选的,所述工厂类预先定义有多个路由转发规则以及多个业务实现类;所述通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象的步骤,包括:根据所述第一预设业务参数查询和匹配相应的路由转发规则;如果查询到匹配的路由转发规则,则根据该匹配的路由转发规则生成所述业务实现类对象并返回所述业务实现类对象;及如果没有查询到匹配的路由转发规则,则返回空值。
可选的,根据该匹配的路由转发规则生成并返回所述业务实现类对象的步骤,包括:在所述工厂类中根据所述第一预设业务参数中的type值匹配生成对应的业务实现类对象。
可选的,通过所述统一接口路径层接收所述工厂类返回的业务实现类对象的步骤和通过所述统一接口路径层调用统一接口层的步骤之间,还包括对所述业务实现类对象进行校验的步骤:判断所述业务实现类对象的参数是否为空值和所述业务实现类对象是否为所述统一接口层的子类;如果所述业务实现类对象的参数不为空值或所述业务实现类对象不是所述统一接口层的子类,则验证失败;及如果所述业务实现类对象的参数为空值且所述业务实现类对象是所述统一接口层的子类,则验证成功。
可选的,通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法,还包括:通过所述统一接口层将所述请求转发到统一接口层模板类实现;判断所述业务实现类对象是否重写了所述统一接口层模板类的方法;如果所述业务实现类对象重写了所述统一接口层模板类的方法,则运行重写后的同名方法;及如果所述业务实现类对象没有重写所述统一接口层模板类的方法,则运行所述统一接口层模板类中的统一方法。
本发明实施例的一个方面又提供了一种接口路由转发***,所述接口路由转发***包括:第一接收模块,用于通过统一接口路径层统一接口路径层接收前端发送的请求;发送模块,用于通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类;生成模块,用于通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象;第二接收模块,用于通过所述统一接口路径层接收所述工厂类返回的业务实现类对象;及调用模块,用于通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。
本发明实施例的一个方面又提供了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述接口路由转发方法的步骤。
本发明实施例的一个方面又提供了一种计算机可读存储介质,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述接口路由转发方法的步骤。
本发明实施例提供的接口路由转发方法、***、设备及计算机可读存储介质,通过统一接口路径层controller、统一接口层service等减少对外暴露的接口,针对相似的功能接口进行统一管理,统一开发规范管理接口,提高***的容错率,减少前后端联调的工作量,降低联调期间的沟通成本和开发成本。接口功能分工明确,后端开发人员仅需要关心对应业务***的逻辑开发。还可以针对对应业务***特有的业务场景进行定制开发业务逻辑,对通用的业务逻辑无需重复开发,减少开发的工作量,降低出错率,提高接口的复用性和可扩展性,也降低了开发人员对于代码的熟悉成本。
本发明实施例代码架构清晰、冗余代码少、***安全性高、开发成本低、容错率高和易于后台管理。
附图说明
图1示意性示出了根据本发明实施例的接口路由转发方法的软件架构图;
图2示意性示出了根据本发明实施例一的接口路由转发方法的流程图;
图3为示意性示出了具体实施接口路由转发方法的流程图;
图4示意性示出了根据本发明实施例三的接口路由转发***的框图;及
图5示意性示出了根据本发明实施例三的适于实现接口路由转发方法的计算机设备的硬件架构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明实施例中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
图1示意性示出了根据本发明实施例的接口路由转发方法的软件架构图。在示例性的实施例中,所述软件架构图包括:统一接口路径层(controller)、统一接口层(service)、工厂类(Factory)、统一接口层模板类(adapter)以及业务实现类(serviceImplement)。其中:
所述统一接口路径层,用于捕获前端(诸如电脑、智能手机等)发起的请求,如:查询请求、删除请求、更新请求。即,所述统一接口路径层仅配置一个通用接口,该通用接口作为各个前端的请求入口。
所述统一接口层,用于对外暴露接口(此处的对外指接口路径)。
所述统一接口层模板类,为接口实现父类,继承所述统一接口层,不涉及具体逻辑。
所述业务实现类对象,可以继承统一接口层模板类,并重写对应的方法,实现定制的逻辑。
所述工厂类,配置多个路由转发规则,用于根据路由转发规则创建相应的业务实现。
实施例一
图2示意性示出了根据本发明实施例一的接口路由转发方法的流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。下面以计算机设备2为执行主体进行示例性描述。
如图2所示,该接口路由转发方法可以包括步骤S200~S210,其中:
步骤S200,通过统一接口路径层接收前端发送的请求。
所述统一接口路径层接收到前端发送的请求之后,可以对所述请求执行以下一个或多个操作:参数校验、转换对象、组装返回对象和异常处理等。以参数校验为例:
(1)解析所述请求,以得到多个业务参数;
(2)校验各个业务参数是否合法;
(3)如果存在不合法的业务参数,则返回报错信息;
(4)如果各个业务参数均是合法参数,则检验完毕,并将所述多个业务参数中的第一预设业务参数传递到所述工厂类中。
步骤S202,通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类Factory中。
所述统一接口路径层可以将所述第一预设业务参数发送到所述工厂类中并且调用所述工厂类的工厂方法,以使工所述工厂类根据所述第一预设业务参数生成相应的业务实现类对象。所述工厂方法为预先创建的,并且用于根据所传入的参数不同创建不同的业务实现类对象。
步骤S204,通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象。
所述工厂类预先定义有多个路由转发规则以及多个业务实现类对象。根据既定的路由转发规则,自动适配对应的接口和实现的业务实现类对象,达到实现业务逻辑的目的。
在示例性的实施例中,所述步骤S204可以通过如下步骤实现:步骤S204A、根据所述第一预设业务参数查询和匹配相应的路由转发规则;步骤S204B、如果查询到匹配的路由转发规则,则根据该匹配的路由转发规则生成所述业务实现类对象并返回所述业务实现类对象;步骤S204C、如果没有查询到匹配的路由转发规则,则返回空值。
在示例性的实施例中,根据该匹配的路由转发规则生成并返回所述业务实现类对象的步骤,包括:在所述工厂类中根据所述第一预设业务参数中的type值匹配生成对应的业务实现类对象(示例性的,可以由spring管理注入)。需要说明的是,所述第一预设业务参数为controller解析所述请求得到的业务参数。
步骤S206,通过所述统一接口路径层接收所述工厂类返回的业务实现类对象。
所述工厂类生成了所述业务实现类对象,会将所述业务实现类对象返回至controller并赋值给所述统一接口层。
在示例性的实施例中,所述统一接口路径层接收所述工厂类返回的业务实现类对象之后,可以对业务实现类对象的参数进行合法性校验。具体如下:判断所述业务实现类对象的参数是否为空值和所述业务实现类对象是否为所述统一接口层的子类;如果所述业务实现类对象的参数不为空值或所述业务实现类对象不是所述统一接口层的子类,则验证失败;及如果所述业务实现类对象的参数为空值且所述业务实现类对象是所述统一接口层的子类,则验证成功。通过合法性验证,可以防止程序出错。例如:如果验证失败,则可以停止程序运行,以防止程序出错。
步骤S208,通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。
具体的,将所述统一接口路径层解析的请求参数并透传到所述统一接口层中,实现业务逻辑。
在示例性的实施例中,步骤S208可以通过步骤S208A~S208D实现:
步骤S208A,通过所述统一接口层将所述请求转发到统一接口层模板类实现。步骤S208B,判断所述业务实现类对象是否重写了所述统一接口层模板类的方法。步骤S208C,如果所述业务实现类对象重写了所述统一接口层模板类的方法,则运行重写后的同名方法。步骤S208D,如果所述业务实现类对象没有重写所述统一接口层模板类的方法,则运行所述统一接口层模板类中的统一方法。
所述统一接口层用于统一承接所述统一接口路径层的调用操作。
如果所述业务实现类对象的参数不为空值,可以根据业务场景调用不同的业务方法。根据JAVA的多态和继承的特性,由于业务实现类对象继承了所述统一接口层模板类,可以根据多变的业务场景重写所述统一接口层模板类中的任一方法,所述统一接口层会将请求转发到所述统一接口层模板类中实现。也就是说,业务实现类对象继承所述统一接口层模板类,并改写了对应的接口逻辑,实际运行的是业务实现类对象改写的接口逻辑。不难理解,业务实现类对象继承了所述统一接口层模板类,即业务实现类对象继承了所述统一接口层模板类中的所有实现方法。既可以调用继承的所述统一接口层模板类中的方法逻辑运行,也可以根据特定的业务场景,重写所述统一接口层模板类中的同名方法,定制差异化的业务逻辑方法。当所述统一接口层将请求转发到所述统一接口层模板类实现,会匹配对应的业务实现类,并判断匹配对应的业务实现类是否已经重写了统一接口层模板类中的同名方法。
为了便于理解,如图3所示,以下提供一个具体实施流程:
当前端发起请求,所述controller捕获后,先校验下业务必需的参数是否合法,如果不合法则返回提示报错信息。校验完参数,请求中的第一预设业务参数进入所述Factory中,根据对应的路由转发规则,生成对应的serviceImplement对象并返回,赋值予所述service。如果没有满足的路由转发条件,则返回空值(NULL)。回到所述controller,需要对所述Factory返回的serviceImplement对象进行校验对象是否为空值等,防止程序出错。如果serviceImplement对象的参数不为空值,继续调用自身业务方法。根据Java的多态和继承的特性,由于serviceImplement继承了adapter,可以根据多变的业务场景重写adapter中的任一方法,service会将请求(或其中的请求参数)转发到adapter中实现。此时,由于serviceImplement继承了adapter,它也就继承了adapter中的所有实现方法。既可以调用继承的adapter中的方法逻辑运行,也可以根据特定的业务场景,重写adapter中的同名方法,定制设计属于自己的业务逻辑方法实现。当service将请求转发到adapter实现中,会先确定对应的serviceImplement对象是否重写了adapter中的同名方法。如果已重写了同名方法,则直接运行重写后的定制同名方法逻辑;如果没有重写同名方法,则调用adapter中的统一方法,按照adapter中的逻辑运行。
以上所述,本实施例可以针对相似的功能接口进行统一管理,减少对外暴露的接口,提高***的容错率。统一开发规范管理接口,减少前后端联调的工作量,降低联调期间的沟通成本和开发成本。接口功能分工明确,后端开发人员仅需要关心对应业务***的逻辑开发。还可以针对对应业务***特有的业务场景进行定制开发业务逻辑,对通用的业务逻辑无需重复开发,减少开发的工作量,降低出错率,提高接口的复用性和可扩展性,也降低了开发人员对于代码的熟悉成本。
实施例三
图4示意性示出了根据本发明实施例三的接口路由转发***的框图,该接口路由转发***可以被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明实施例。本发明实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,以下描述将具体介绍本实施例中各程序模块的功能。
如图4所示,该接口路由转发***400可以包括第一接收模块410、发送模块420、生成模块430、第二接收模块440和调用模块450,其中:
第一接收模块410,用于通过统一接口路径层统一接口路径层接收前端发送的请求。
发送模块420,用于通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类。
生成模块430,用于通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象。
第二接收模块440,用于通过所述统一接口路径层接收所述工厂类返回的业务实现类对象。
调用模块450,用于通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。
在示例性的实施例中,所述发送模块420,还用于:解析所述请求,以得到多个业务参数;校验各个业务参数是否合法;如果存在不合法的业务参数,则返回报错信息;及如果各个业务参数均是合法参数,则检验完毕,并将所述多个业务参数中的第一预设业务参数传递到所述工厂类中。
在示例性的实施例中,所述工厂类预先配置有多个工厂方法,所述工厂方法用于根据所传入的业务参数创建相应的业务实现类对象。
在示例性的实施例中,所述工厂类预先定义有多个路由转发规则以及多个业务实现类;生成模块430,还用于:根据所述第一预设业务参数查询和匹配相应的路由转发规则;如果查询到匹配的路由转发规则,则根据该匹配的路由转发规则生成所述业务实现类对象并返回所述业务实现类对象;及如果没有查询到匹配的路由转发规则,则返回空值。
在示例性的实施例中,根据该匹配的路由转发规则生成并返回所述业务实现类对象的步骤,包括:在所述工厂类中根据所述第一预设业务参数中的type值匹配生成对应的业务实现类对象。
在示例性的实施例中,还包括验证模块(未标识),用于:判断所述业务实现类对象的参数是否为空值和所述业务实现类对象是否为所述统一接口层的子类;如果所述业务实现类对象的参数不为空值或所述业务实现类对象不是所述统一接口层的子类,则验证失败;及如果所述业务实现类对象的参数为空值且所述业务实现类对象是所述统一接口层的子类,则验证成功。
在示例性的实施例中,调用模块450,还用于:通过所述统一接口层将所述请求转发到统一接口层模板类实现;判断所述业务实现类对象是否重写了所述统一接口层模板类的方法;如果所述业务实现类对象重写了所述统一接口层模板类的方法,则运行重写后的同名方法;及如果所述业务实现类对象没有重写所述统一接口层模板类的方法,则运行所述统一接口层模板类中的统一方法。
实施例三
图5示意性示出了根据本发明实施例三的适于实现接口路由转发方法的计算机设备2的硬件架构示意图。本实施例中,计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图5所示,计算机设备6至少包括但不限于:可通过***总线相互通信链接存储器510、处理器520、网络接口530。其中:
存储器510至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器510可以是计算机设备2的内部存储模块,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器510也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(SmartMedia Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,存储器510还可以既包括计算机设备2的内部存储模块也包括其外部存储设备。本实施例中,存储器510通常用于存储安装于计算机设备2的操作***和各类应用软件,例如接口路由转发方法的程序代码等。此外,存储器510还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器520在一些实施例中可以是中央处理器(Central Processing Unit,简称为CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器520通常用于控制计算机设备2的总体操作,例如执行与计算机设备2进行数据交互或者通信相关的控制和处理等。本实施例中,处理器520用于运行存储器510中存储的程序代码或者处理数据。
网络接口530可包括无线网络接口或有线网络接口,该网络接口530通常用于在计算机设备2与其他计算机设备之间建立通信链接。例如,网络接口530用于通过网络将计算机设备2与外部终端相连,在计算机设备2与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯***(GlobalSystem of Mobile communication,简称为GSM)、宽带码分多址(Wideband Code DivisionMultiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图5仅示出了具有部件510-530的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器510中的接口路由转发方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器520)所执行,以完成本发明实施例。
实施例四
本发明还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行以下步骤:通过统一接口路径层接收前端发送的请求;通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类中;通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象;通过所述统一接口路径层接收所述工厂类返回的业务实现类对象;及通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作***和各类应用软件,例如实施例中接口路由转发方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种接口路由转发方法,其特征在于,所述方法包括:
通过统一接口路径层接收前端发送的请求;
通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类;
通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象;
通过所述统一接口路径层接收所述工厂类返回的业务实现类对象;及
通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。
2.根据权利要求1所述的接口路由转发方法,其特征在于,所述通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类的步骤,还包括:
解析所述请求,以得到多个业务参数;
校验各个业务参数是否合法;
如果存在不合法的业务参数,则返回报错信息;及
如果各个业务参数均是合法参数,则检验完毕,并将所述多个业务参数中的第一预设业务参数传递到所述工厂类中。
3.根据权利要求1所述的接口路由转发方法,其特征在于,所述工厂类预先配置有多个工厂方法,所述工厂方法用于根据所传入的业务参数创建相应的业务实现类对象。
4.根据权利要求1所述的接口路由转发方法,其特征在于,所述工厂类预先定义有多个路由转发规则以及多个业务实现类;
所述通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象的步骤,包括:
根据所述第一预设业务参数查询和匹配相应的路由转发规则;
如果查询到匹配的路由转发规则,则根据该匹配的路由转发规则生成所述业务实现类对象并返回所述业务实现类对象;及
如果没有查询到匹配的路由转发规则,则返回空值。
5.根据权利要求4所述的接口路由转发方法,其特征在于,根据该匹配的路由转发规则生成并返回所述业务实现类对象的步骤,包括:
在所述工厂类中根据所述第一预设业务参数中的type值匹配生成对应的业务实现类对象。
6.根据权利要求1所述的接口路由转发方法,其特征在于,通过所述统一接口路径层接收所述工厂类返回的业务实现类对象的步骤和通过所述统一接口路径层调用统一接口层的步骤之间,还包括对所述业务实现类对象进行校验的步骤:
判断所述业务实现类对象的参数是否为空值和所述业务实现类对象是否为所述统一接口层的子类;
如果所述业务实现类对象的参数不为空值或所述业务实现类对象不是所述统一接口层的子类,则验证失败;及
如果所述业务实现类对象的参数为空值且所述业务实现类对象是所述统一接口层的子类,则验证成功。
7.根据权利要求1所述的接口路由转发方法,其特征在于,通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法,还包括:
通过所述统一接口层将所述请求转发到统一接口层模板类实现;
判断所述业务实现类对象是否重写了所述统一接口层模板类的方法;
如果所述业务实现类对象重写了所述统一接口层模板类的方法,则运行重写后的同名方法;及
如果所述业务实现类对象没有重写所述统一接口层模板类的方法,则运行所述统一接口层模板类中的统一方法。
8.一种接口路由转发***,其特征在于,包括:
第一接收模块,用于通过统一接口路径层统一接口路径层接收前端发送的请求;
发送模块,用于通过所述统一接口路径层将所述请求中的第一预设业务参数发送至工厂类;
生成模块,用于通通过所述工厂类基于所述第一预设业务参数生成业务实现类对象并返回所述业务实现类对象;
第二接收模块,用于通过所述统一接口路径层接收所述工厂类返回的业务实现类对象;及
调用模块,用于通过所述统一接口路径层调用统一接口层,以通过所述统一接口层调用所述业务实现类对象的业务方法。
9.一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时用于实现权利要求1~7中任一项所述的接口路由转发方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行权利要求1~7中任一项所述的接口路由转发方法的步骤。
CN202010743270.7A 2020-07-29 2020-07-29 接口路由转发方法、***、计算机设备及可读存储介质 Pending CN111831365A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010743270.7A CN111831365A (zh) 2020-07-29 2020-07-29 接口路由转发方法、***、计算机设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010743270.7A CN111831365A (zh) 2020-07-29 2020-07-29 接口路由转发方法、***、计算机设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN111831365A true CN111831365A (zh) 2020-10-27

Family

ID=72921089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010743270.7A Pending CN111831365A (zh) 2020-07-29 2020-07-29 接口路由转发方法、***、计算机设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN111831365A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113452575A (zh) * 2021-06-24 2021-09-28 河北幸福消费金融股份有限公司 业务测试方法、***、设备和存储介质
CN114996181A (zh) * 2021-03-02 2022-09-02 北京同邦卓益科技有限公司 接口的路由方法、装置、电子设备及存储介质
WO2023098241A1 (zh) * 2021-12-03 2023-06-08 深圳前海微众银行股份有限公司 一种请求处理方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110088011A1 (en) * 2009-10-14 2011-04-14 Vermeg Sarl Automated Enterprise Software Development
CN108040126A (zh) * 2017-12-29 2018-05-15 贵阳语玩科技有限公司 发起http请求的方法及装置
CN109254916A (zh) * 2018-08-30 2019-01-22 郑州云海信息技术有限公司 一种基于Spring依赖注入的可视化RestFul接口测试的方法及服务器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110088011A1 (en) * 2009-10-14 2011-04-14 Vermeg Sarl Automated Enterprise Software Development
CN108040126A (zh) * 2017-12-29 2018-05-15 贵阳语玩科技有限公司 发起http请求的方法及装置
CN109254916A (zh) * 2018-08-30 2019-01-22 郑州云海信息技术有限公司 一种基于Spring依赖注入的可视化RestFul接口测试的方法及服务器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
VIVIANXLA: "java中controller,service,serviceImpl,mapper,xml等几个文件的作用理解,以简单的查询为例", 《HTTPS://WWW.JIANSHU.COM/P/7E0364A827A7》 *
刘启文: "《Java Web编程技术》", 30 August 2016, 北京航空航天大学出版社出版发行 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114996181A (zh) * 2021-03-02 2022-09-02 北京同邦卓益科技有限公司 接口的路由方法、装置、电子设备及存储介质
CN114996181B (zh) * 2021-03-02 2023-09-26 北京同邦卓益科技有限公司 接口的路由方法、装置、电子设备及存储介质
CN113452575A (zh) * 2021-06-24 2021-09-28 河北幸福消费金融股份有限公司 业务测试方法、***、设备和存储介质
CN113452575B (zh) * 2021-06-24 2022-11-22 河北幸福消费金融股份有限公司 业务测试方法、***、设备和存储介质
WO2023098241A1 (zh) * 2021-12-03 2023-06-08 深圳前海微众银行股份有限公司 一种请求处理方法及装置

Similar Documents

Publication Publication Date Title
CN111831365A (zh) 接口路由转发方法、***、计算机设备及可读存储介质
CN111988337B (zh) 权限管理方法及***
US20230036357A1 (en) Method and apparatus for authority control, computer device and storage medium
CN110505162B (zh) 消息传输方法、装置及电子设备
CN111414391A (zh) 一种访问多数据源的方法及***
CN111258900A (zh) 接口测试脚本的生成方法、***、设备及存储介质
CN111914194B (zh) 一种业务***变更方法、装置、电子设备及存储介质
CN110083338B (zh) 基于智能网关的服务***
CN112835782B (zh) 接口的接入测试方法和***
CN112039900A (zh) 网络安全风险检测方法、***、计算机设备和存储介质
CN111507676A (zh) 业务订单流程创建和实现方法、装置、存储介质和***
CN111338716A (zh) 基于规则引擎的数据处理方法、装置及终端设备
CN112559027A (zh) 功能组件的创建与管理方法、***、设备及可读存储介质
CN113468212A (zh) 事件执行的方法、装置及电子设备
CN111984236A (zh) 组件标准化管理方法、装置、计算机设备及可读存储介质
CN111563215A (zh) 前端操作权限的控制方法、装置以及相关设备
CN115396221A (zh) 授权处理方法及装置、***、电子设备及存储介质
CN114745185A (zh) 集群访问方法及装置
CN111984484A (zh) 无侵入式微服务接入方法及***
CN108363614B (zh) 一种应用的业务模块管理方法、装置及服务器
CN111580799A (zh) 领域特定语言脚本拼装方法及***
CN112261072A (zh) 一种服务调用方法、装置、设备和存储介质
CN114880144A (zh) 页面数据处理方法、装置、计算机设备和存储介质
CN118013125A (zh) 信息查询方法、装置、电子设备、存储介质和程序产品
CN117827176A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201027

RJ01 Rejection of invention patent application after publication