本申请涉及计算机,尤其涉及一种业务处理方法、装置、电子设备及计算机可读介质。
背景技术:
1、目前,当一个完整的http请求达到后,请求数据会首先经过滤器和拦截器(如果有滤器和拦截器的话),然后到达控制层。控制层处理请求数据后会调用服务层进行业务处理。服务层处理完毕后再调用数据访问层对数据库进行数据操作,从而完成整个请求的处理。现有技术方案去除了控制层,将控制层融入了服务层,本来只专注于业务逻辑处理的服务层代码里要混入控制层代码。由于没有遵守分层开发规范,将会导致各逻辑分层之间耦合度过高,任何一层的逻辑变动都可能会引起其他层的代码变更;另外多个业务方法大部分核心处理逻辑可能都是一致的,但控制层处理逻辑不尽相同。现在服务层的业务方法混有控制层的逻辑,业务方法的业务处理逻辑无法独立出来被其他业务方法调用,不利于业务处理代码的复用,代码可读性极差,业务处理效率低、准确性低。
技术实现思路
1、有鉴于此,本申请实施例提供一种业务处理方法、装置、电子设备及计算机可读介质,能够解决现有的服务层的业务方法混有控制层的逻辑,业务方法的业务处理逻辑无法独立出来被其他业务方法调用,不利于业务处理代码的复用,代码可读性极差,业务处理效率低、准确性低的问题。
2、为实现上述目的,根据本申请实施例的一个方面,提供了一种业务处理方法,包括:
3、响应于业务处理请求,调用通用控制器方法以获取对应的寻址参数和业务请求数据;
4、基于寻址参数,定位目标控制器对象和目标控制器方法对象;
5、根据目标控制器方法对象,获取对应的方法对象入参类型;
6、调用数据交换工具以基于方法对象入参类型,将业务请求数据反序列化为目标方法入参对象;
7、基于目标方法入参对象,反射调用目标控制器对象对应的目标控制器方法对象的方法以执行业务处理。
8、可选地,寻址参数,包括目标控制器标识和目标方法标识;基于寻址参数,定位目标控制器对象和目标控制器方法对象,包括:
9、基于目标控制器标识,从对象管理容器中获取对应的目标控制器对象;
10、基于目标方法标识询问方法寻址器,以获取对应的目标控制器方法对象。
11、可选地,在基于目标方法标识询问方法寻址器之前,方法还包括:
12、响应于检测到应用上下文初始化完毕事件,初始化方法寻址器。
13、可选地,初始化方法寻址器,包括:
14、响应于检测到应用上下文初始化完毕事件,触发调用回调方法以扫描得到控制器的方法对象和方法对象对应的方法对象唯一标识;
15、基于方法对象和方法对象唯一标识初始化方法寻址器。
16、可选地,扫描得到控制器的方法对象和方法对象对应的方法对象唯一标识,包括:
17、调用回调方法,以扫描控制器所在包下的二进制文件,得到控制器资源对象集合;
18、遍历控制器资源对象集合,以获取每个控制器对应的类对象;
19、基于类对象,获取对应的方法对象集合;
20、遍历方法对象集合,以获取对应的方法对象和方法对象唯一标识。
21、可选地,基于方法对象和方法对象唯一标识初始化方法寻址器,包括:
22、以方法对象为键,以对应的方法对象唯一标识为值,组成键值对,将键值对存储至字典数据结构中。
23、另外,本申请还提供了一种业务处理装置,包括:
24、第一获取单元,被配置成响应于业务处理请求,调用通用控制器方法以获取对应的寻址参数和业务请求数据;
25、定位单元,被配置成基于寻址参数,定位目标控制器对象和目标控制器方法对象;
26、第二获取单元,被配置成根据目标控制器方法对象,获取对应的方法对象入参类型;
27、反序列化单元,被配置成调用数据交换工具以基于方法对象入参类型,将业务请求数据反序列化为目标方法入参对象;
28、反射调用单元,被配置成基于目标方法入参对象,反射调用目标控制器对象对应的目标控制器方法对象的方法以执行业务处理。
29、可选地,寻址参数,包括目标控制器标识和目标方法标识;定位单元进一步被配置成:
30、基于目标控制器标识,从对象管理容器中获取对应的目标控制器对象;
31、基于目标方法标识询问方法寻址器,以获取对应的目标控制器方法对象。
32、可选地,装置还包括初始化单元,被配置成:
33、响应于检测到应用上下文初始化完毕事件,初始化方法寻址器。
34、可选地,初始化单元进一步被配置成:
35、响应于检测到应用上下文初始化完毕事件,触发调用回调方法以扫描得到控制器的方法对象和方法对象对应的方法对象唯一标识;
36、基于方法对象和方法对象唯一标识初始化方法寻址器。
37、可选地,初始化单元进一步被配置成:
38、调用回调方法,以扫描控制器所在包下的二进制文件,得到控制器资源对象集合;
39、遍历控制器资源对象集合,以获取每个控制器对应的类对象;
40、基于类对象,获取对应的方法对象集合;
41、遍历方法对象集合,以获取对应的方法对象和方法对象唯一标识。
42、可选地,初始化单元进一步被配置成:
43、以方法对象为键,以对应的方法对象唯一标识为值,组成键值对,将键值对存储至字典数据结构中。
44、另外,本申请还提供了一种业务处理电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述的业务处理方法。
45、另外,本申请还提供了一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现如上述的业务处理方法。
46、为实现上述目的,根据本申请实施例的又一个方面,提供了一种计算机程序产品。
47、本申请实施例的一种计算机程序产品,包括计算机程序,程序被处理器执行时实现本申请实施例提供的业务处理方法。
48、上述发明中的一个实施例具有如下优点或有益效果:本申请通过响应于业务处理请求,调用通用控制器方法以获取对应的寻址参数和业务请求数据;基于寻址参数,定位目标控制器对象和目标控制器方法对象;根据目标控制器方法对象,获取对应的方法对象入参类型;调用数据交换工具以基于方法对象入参类型,将业务请求数据反序列化为目标方法入参对象;基于目标方法入参对象,反射调用目标控制器对象对应的目标控制器方法对象的方法以执行业务处理。降低控制层与服务层的耦合度,提高服务层的可复用度,提高代码可读性,提升业务处理效率和准确性。
49、上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
1.一种业务处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述寻址参数,包括目标控制器标识和目标方法标识;所述基于所述寻址参数,定位目标控制器对象和目标控制器方法对象,包括:
3.根据权利要求2所述的方法,其特征在于,在所述基于所述目标方法标识询问方法寻址器之前,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述初始化方法寻址器,包括:
5.根据权利要求4所述的方法,其特征在于,所述扫描得到控制器的方法对象和所述方法对象对应的方法对象唯一标识,包括:
6.根据权利要求4所述的方法,其特征在于,所述基于所述方法对象和所述方法对象唯一标识初始化方法寻址器,包括:
7.一种业务处理装置,其特征在于,包括:
8.根据权利要求7所述的装置,其特征在于,所述寻址参数,包括目标控制器标识和目标方法标识;所述定位单元进一步被配置成:
9.根据权利要求8所述的装置,其特征在于,所述装置还包括初始化单元,被配置成:
10.根据权利要求9所述的装置,其特征在于,所述初始化单元进一步被配置成:
11.根据权利要求10所述的装置,其特征在于,所述初始化单元进一步被配置成:
12.根据权利要求10所述的装置,其特征在于,所述初始化单元进一步被配置成:
13.一种业务处理电子设备,其特征在于,包括:
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述的方法。