基于SpringBoot的web系统后端实现方法及装置与流程

文档序号:25304465发布日期:2021-06-04 14:09阅读:406来源:国知局
基于SpringBoot的web系统后端实现方法及装置与流程
基于springboot的web系统后端实现方法及装置
技术领域
1.本发明涉及web系统开发技术领域,尤其涉及一种基于springboot的web系统后端实现方法及装置。


背景技术:

2.本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
3.目前主流的基于springboot的web系统开发都是采用三层架构体系实现的,分别是:页面显示层、业务逻辑层和数据访问层。其中页面显示层主要将业务功能展现给用户使用,并采集用户操作和提交的数据;业务逻辑层实现用户操作后具体要执行的逻辑功能;数据访问层实现对数据的访问和操作处理。
4.在开发过程中,需要在逻辑上清晰这三层分别实现的功能,并以此设计整个系统,管理整个系统的数据文件。由于市场随时在变,市场对业务提出了更多更深入的适应需求,这些需求最终都将在软件系统上实现。频繁而深入的变动带来的是整个web 系统面临不停的升级改造,增加了巨大的开发成本。
5.以开发两个对象模型为例,比如目前存在学生信息(如学号、姓名、性别和籍贯等信息)和教师信息(如教师编号,姓名,性别,籍贯,职称,毕业院校和专业等信息)需要在系统中进行管理和维护。参照图1所示,按照目前的开发模式,需要在业务逻辑层分别编写针对学生信息和教师信息的业务逻辑,对数据访问层的学生信息表和教师信息表分别进行管理及维护。如果学生信息或教师信息发生了调整,则需要修改页面展示层的显示内容、业务逻辑层的信息处理逻辑,再调整数据访问层的数据表中内容,也就意味着三层均需要做适应性调整,改动较大。如果是频繁发生调整的业务模块,还会涉及到更深入的版本管理成本,带来巨大的开发成本。


技术实现要素:

6.本发明实施例提供一种基于springboot的web系统后端实现方法,用以减少后端业务层在开发过程中的变动,降低开发成本,同时提升系统的稳定性,该方法包括:
7.接收页面显示层上送的操作数据;
8.从操作数据中提取操作数据对应的业务id和维护对象id;
9.从数据访问层存储的业务参数表中,获取与业务id对应的配置信息,所述配置信息包括不同数据字段各自对应的业务处理逻辑、每个数据字段所在的数据表,以及每个数据字段与数据表中表字段的映射关系;
10.将维护对象id和业务处理逻辑组合为条件表达式;
11.利用所述条件表达式处理所述操作数据。
12.本发明实施例还提供一种基于springboot的web系统后端实现装置,用以减少后端业务层在开发过程中的变动,降低开发成本,同时提升系统的稳定性,该装置包括:
13.接收模块,用于接收页面显示层上送的操作数据;
14.提取模块,用于从接收模块接收的操作数据中提取操作数据对应的业务id和维护对象id;
15.获取模块,用于从数据访问层存储的业务参数表中,获取与提取模块提取的业务 id对应的配置信息,所述配置信息包括不同数据字段各自对应的业务处理逻辑、每个数据字段所在的数据表,以及每个数据字段与数据表中表字段的映射关系;
16.组合模块,用于将提取模块提取的维护对象id和获取模块获取的业务处理逻辑组合为条件表达式;
17.更新模块,用于利用组合模块组合的所述条件表达式处理接收模块接收的所述操作数据。
18.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于 springboot的web系统后端实现方法。
19.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述基于springboot的web系统后端实现方法的计算机程序。
20.本发明实施例中,页面显示层上送操作数据时,在操作数据中添加了业务id和维护对象id,业务逻辑层根据业务id去数据访问层的业务参数表中查找对应业务的配置参数,利用配置参数将操作数据更新至数据访问层的数据表中。这样一来,当业务发生变动时,可以通过修改业务参数表中的配置参数及页面显示层的操作界面即可实现整个web系统的修改,简化了开发难度,提高了开发效率,降低了开发成本;系统更新时可以完全实现不用重启服务的方式,达到系统升级客户无感知,不影响客户实时操作的效果,提升了系统的稳定性。并且,由于业务逻辑层实现了对各项业务的集中管理,避免了不同的开发人员来进行开发和维护,进而避免了因开发人员个人能力造成的开发质量差异,同时,开发人员配比上可以适当减少后端开发人员配比,提升了整个开发团队紧凑度。
附图说明
21.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
22.图1为现有技术中一种基于springboot的web系统三层架构示意图;
23.图2为本发明实施例中一种基于springboot的web系统后端实现方法的流程图;
24.图3为本发明实施例中另一种基于springboot的web系统后端实现方法的流程图;
25.图4为本发明实施例中一种基于springboot的web系统三层架构示意图;
26.图5为本发明实施例中一种基于springboot的web系统后端实现装置的结构示意图;
27.图6为本发明实施例中一种计算机设备的结构示意图。
具体实施方式
28.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
29.本发明实施例中提供一种基于springboot的web系统后端实现方法,如图2所示,该方法包括步骤201至步骤205:
30.步骤201、接收页面显示层上送的操作数据。
31.其中,操作数据为报文的形式,报文结构按照json形式组织,其中的各个数据字段的字段值由用户通过前端页面提交。
32.步骤202、从操作数据中提取操作数据对应的业务id和维护对象id。
33.业务id是由web系统开发者设定的,用于区分对不同维护对象所做的不同业务处理。比如说,对员工张三的个人信息进行改动操作,则操作数据中携带业务id 001;对张三的个人信息进行查询操作,则操作数据中携带业务id 002;对员工李四的个人信息进行查询操作,则操作数据中携带业务id 003。
34.维护对象id用于区分不同的操作对象,在上述示例中,张三、李四可以作为维护对象id。
35.业务id和维护对象id均可以为文字、数字、字母等符号中的一种或多种的组合。
36.示例性的,以下为新增学生信息时,页面显示层上送的操作数据:
[0037][0038]
在上述示例中,“010001001”即为业务id,“张三”可以作为维护对象id。
[0039]
步骤203、从数据访问层存储的业务参数表中,获取与业务id对应的配置信息。
[0040]
其中,配置信息包括不同数据字段各自对应的业务处理逻辑、每个数据字段所在的数据表,以及每个数据字段与数据表中表字段的映射关系。
[0041]
需要说明的是,业务参数表中的业务id各不相同,以此来保证业务id与配置信息的对应关系的准确性。
[0042]
考虑到操作数据中包含多个数据字段,比如说,增加员工张三信息的操作数据中,包含姓名、性别、出生日期、电话号码、毕业院校、工作经历、父母信息、兄弟姐妹信息等,数据库中将上述三部分信息划分为了三类信息,基本信息、履历和社会关系,分别存储在三个不同的数据表中,这样,配置信息中就需要包含姓名、性别等各个数据字段各自对应的业务处理逻辑、所在的数据表,以及与数据表中哪个表字段对应,如,姓名对应增加信息业务逻辑,存储在数据表1中,与表字段name相对应。
[0043]
步骤204、将维护对象id和业务处理逻辑组合为条件表达式。
[0044]
其中,业务处理逻辑的固定位置设置变量。
[0045]
具体的,参见图3,步骤204可以执行为如下步骤2041和步骤2042:
[0046]
步骤2041、利用维护对象id替换业务处理逻辑固定位置设置的变量。
[0047]
步骤2042、将替换后的业务处理逻辑确定为处理操作数据的条件表达式。
[0048]
也就是说,当设置业务逻辑时,在其中固定位置设置一个变量,此时的业务逻辑是普遍适用于相同的业务的;而在接收到操作数据之后,以操作数据中的维护对象id 替换该变量,这样可以的条件表达式单一适用于该维护对象。
[0049]
需要补充的是,条件表达式为sql语句。
[0050]
步骤205、利用条件表达式处理操作数据。
[0051]
在实际系统开发中,存在操作数据中的数据字段值与数据表中存储的表字段值不同的情况,比如,操作数据上送的员工状态包含正常、离职、脱密中三种,但是数据包中将正常存储为1,将离职存储为3,将脱密中存储为2,这种情况下,将正常、离职、脱密中称为数据字典,将1、3、2称为字典项。当操作数据中出现数据字典时,需要先数据字典与字典项对应之后,才能再数据表中执行与字典项相关的操作。因此,本发明实施例中,在接收页面显示层上送的操作数据之后,还遍历操作数据,确定操作数据中是否包含数据字典;如果操作数据中包含数据字典,则根据预先存储的数据字典与字典项的对应关系,确定操作数据中数据字典对应的字典项。之后,利用条件表达式处理字典项。
[0052]
具体的,当业务id对应的业务是查询业务外的其他业务,如增、删、改业务,在利用条件表达式处理操作数据时,先利用条件表达式和操作数据生成sql处理语句,sql处理语句中包含数据字段的更新值、数据字段所在的数据表,及数据字段与数据表中表字段的映射关系;再利用sql处理语句将相应数据表中的相应表字段更新为数据字段的更新值。
[0053]
在另一种实现方式中,如果是查询业务,则操作数据中不包含数据字段的更新值,而是包含所要查询的全部数据字段,当通过配置信息确定各个数据字段所在的数据表及对应的表字段后,直接提取相应表字段的字段值即可。
[0054]
需要说明的是,除了增、删、改、查业务以外,还可以实现其他业务的处理,如预判断、预检查等,这些业务均可以通过定义对应的业务处理逻辑来实现。
[0055]
在将相应数据表中的相应表字段更新为数据字段的更新至之后,还可以将执行结果反馈给页面显示层,移动前端界面将执行结果展示给用户。
[0056]
参见图4,为本发明实施例中一种基于springboot的web系统的三层架构示意图,通过图4与图1的对比可见,本发明实施例中,业务逻辑层定义了通用的逻辑,具体的对于每一项业务的处理逻辑由数据访问层中的业务参数表进行存储,这样通过页面显示层和数据访问层的修改即可实现业务的调整,大大提升了开发效率。
[0057]
本发明实施例中,页面显示层上送操作数据时,在操作数据中添加了业务id和维护对象id,业务逻辑层根据业务id去数据访问层的业务参数表中查找对应业务的配置参数,利用配置参数将操作数据更新至数据访问层的数据表中。这样一来,当业务发生变动时,可以通过修改业务参数表中的配置参数及页面显示层的操作界面即可实现整个web系统的修改,简化了开发难度,提高了开发效率,降低了开发成本;系统更新时可以完全实现不用重启服务的方式,达到系统升级客户无感知,不影响客户实时操作的效果,提升了系统的稳定性。并且,由于业务逻辑层实现了对各项业务的集中管理,避免了不同的开发人员来进行开发和维护,进而避免了因开发人员个人能力造成的开发质量差异,同时,开发人员配比上可以适当减少后端开发人员配比,提升了整个开发团队紧凑度。
[0058]
本发明实施例中还提供了一种基于springboot的web系统后端实现装置,如下面的实施例所述。由于该装置解决问题的原理与基于springboot的web系统后端实现方法相似,因此该装置的实施可以参见基于springboot的web系统后端实现方法的实施,重复之处不再赘述。
[0059]
如图5所示,该装置500包括接收模块501、提取模块502、获取模块503、组合模块504和更新模块505。
[0060]
其中,接收模块501,用于接收页面显示层上送的操作数据。
[0061]
提取模块502,用于从接收模块501接收的操作数据中提取操作数据对应的业务 id和维护对象id。
[0062]
获取模块503,用于从数据访问层存储的业务参数表中,获取与提取模块502提取的业务id对应的配置信息,配置信息包括不同数据字段各自对应的业务处理逻辑、每个数据字段所在的数据表,以及每个数据字段与数据表中表字段的映射关系。
[0063]
组合模块504,用于将提取模块502提取的维护对象id和获取模块503获取的业务处理逻辑组合为条件表达式。
[0064]
更新模块505,用于利用组合模块504组合的条件表达式处理接收模块501接收的操作数据。
[0065]
在本发明实施例的一种实现方式中,装置500还包括:
[0066]
确定模块506,用于遍历接收模块501接收的操作数据,确定操作数据中是否包含数据字典;
[0067]
确定模块506,还用于当操作数据中包含数据字典时,根据预先存储的数据字典与字典项的对应关系,确定操作数据中数据字典对应的字典项;
[0068]
更新模块505,用于:
[0069]
利用条件表达式处理确定模块506确定的字典项。
[0070]
在本发明实施例的一种实现方式中,业务处理逻辑的固定位置设置变量,组合模块504,用于:
[0071]
利用维护对象id替换业务处理逻辑固定位置设置的变量;
[0072]
将替换后的业务处理逻辑确定为处理操作数据的条件表达式。
[0073]
在本发明实施例的一种实现方式中,条件表达式为sql语句,当业务id对应的业务不是查询业务时,更新模块505,用于:
[0074]
利用条件表达式和操作数据生成sql处理语句,sql处理语句中包含数据字段的更
新值、数据字段所在的数据表,及数据字段与数据表中表字段的映射关系;
[0075]
利用sql处理语句将相应数据表中的相应表字段更新为数据字段的更新值。
[0076]
本发明实施例中,页面显示层上送操作数据时,在操作数据中添加了业务id和维护对象id,业务逻辑层根据业务id去数据访问层的业务参数表中查找对应业务的配置参数,利用配置参数将操作数据更新至数据访问层的数据表中。这样一来,当业务发生变动时,可以通过修改业务参数表中的配置参数及页面显示层的操作界面即可实现整个web系统的修改,简化了开发难度,提高了开发效率,降低了开发成本;系统更新时可以完全实现不用重启服务的方式,达到系统升级客户无感知,不影响客户实时操作的效果,提升了系统的稳定性。并且,由于业务逻辑层实现了对各项业务的集中管理,避免了不同的开发人员来进行开发和维护,进而避免了因开发人员个人能力造成的开发质量差异,同时,开发人员配比上可以适当减少后端开发人员配比,提升了整个开发团队紧凑度。
[0077]
本发明实施例还提供一种计算机设备,图6为本发明实施例中计算机设备的示意图,该计算机设备能够实现上述实施例中的基于springboot的web系统后端实现方法中全部步骤,该计算机设备具体包括如下内容:
[0078]
处理器(processor)601、存储器(memory)602、通信接口(communications interface) 603和通信总线604;
[0079]
其中,所述处理器601、存储器602、通信接口603通过所述通信总线604完成相互间的通信;所述通信接口603用于实现相关设备之间的信息传输;
[0080]
所述处理器601用于调用所述存储器602中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的基于springboot的web系统后端实现方法。
[0081]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述基于springboot的web系统后端实现方法的计算机程序。
[0082]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等) 上实施的计算机程序产品的形式。
[0083]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0084]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0085]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0086]
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1