一种数据交互方法、装置、系统、设备和存储介质
技术领域
本发明实施例涉及网页数据交互技术,尤其涉及一种数据交互方法、装置、系统、设备和存储介质。
背景技术
万维网系统是部署在服务器上用于为终端提供服务的系统。终端根据不同的需求,发送请求到服务器。服务器根据需求,返回相应的结果,最后,通过终端展示给用户。
现有技术中是采用前后端分离的模式,展示前端页面的终端获取数据的接口,以及需要哪些数据必须与后端沟通好,每一个接口都需要一个接口数据格式规范。
但是,现有技术中这种前后端分离的模式,其开发的沟通成本比较高,而且后续如果页面上需要新增一些内容,不仅需要前端页面元素的调整,后端对应接口的实现也需要调整,开发效率低。
发明内容
本发明实施例提供一种数据交互方法、装置、系统、设备和存储介质,以实现统一数据接口规范,提高开发效率。
第一方面,本发明实施例提供了一种数据交互方法,包括:
获取前端页面中预设类型控件的预设数据;
根据所述预设类型控件的数据模型,将所述预设数据组织成控件列表数组;
将数据请求指令和所述控件列表数组发送至服务器,以便所述服务器根据所述控件列表数组和所述预设类型控件的数据模型,生成与所述数据请求指令对应的反馈数据列表;
根据接收到的所述服务器发送的所述反馈数据列表,设置所述预设类型控件。
第二方面,本发明实施例还提供了一种数据交互方法,包括:
接收终端发送的数据请求指令和控件列表数组;其中,所述控件列表数组包括根据前端页面中预设类型控件的数据模型组织的所述预设类型控件的预设数据;
根据所述控件列表数组和所述预设类型控件的数据模型,生成与所述数据请求指令对应的反馈数据列表;
将所述反馈数据列表发送至所述终端。
第三方面,本发明实施例还提供了一种数据交互装置,应用于终端,包括:
数据获取模块,用于获取前端页面中预设类型控件的预设数据;
控件列表数组生成模块,用于根据所述预设类型控件的数据模型,将所述预设数据组织成控件列表数组;
数据请求发送模块,用于将数据请求指令和所述控件列表数组发送至服务器,以便所述服务器根据所述控件列表数组和所述预设类型控件的数据模型,生成与所述数据请求指令对应的反馈数据列表;
控件设置模块,用于根据接收到的所述服务器发送的所述反馈数据列表,设置所述预设类型控件。
第四方面,本发明实施例还提供了一种数据交互装置,应用于服务器,包括:
数据请求接收模块,用于接收终端发送的数据请求指令和控件列表数组;其中,所述控件列表数组包括根据前端页面中预设类型控件的数据模型组织的所述预设类型控件的预设数据;
反馈数据列表生成模块,用于根据所述控件列表数组和所述预设类型控件的数据模型,生成与所述数据请求指令对应的反馈数据列表;
反馈数据列表发送模块,用于将所述反馈数据列表发送至所述终端。
第五方面,本发明实施例还提供了一种数据交互系统,包括第三方面提供的终端和第四方面提供的服务器。
第六方面,本发明实施例还提供了一种终端,所述终端包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面提供的数据交互方法。
第七方面,本发明实施例还提供了一种服务器,所述服务器包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第二方面提供的数据交互方法。
第八方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面提供的数据交互方法。
第九方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第二方面提供的数据交互方法。
本发明实施例通过预先规范前后端数据接口,解决开发的沟通成本比较高,页面上需要新增内容时,开发效率低的问题,实现提高开发效率的效果。
附图说明
图1是本发明实施例一中的一种数据交互方法的流程图;
图2是本发明实施例二中的一种数据交互方法的流程图;
图3是本发明实施例三中的一种数据交互方法的流程图;
图4是本发明实施例四中的一种数据交互方法的流程图;
图5是本发明实施例五中的一种数据交互装置的结构示意图;
图6是本发明实施例六中的一种数据交互装置的结构示意图;
图7是本发明实施例七中的一种数据交互系统的数据流程图;
图8是本发明实施例八中的一种终端的结构示意图;
图9是本发明实施例九中的一种服务器的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种数据交互方法的流程图,本实施例可适用于处于前端的终端和处于后端的服务器进行数据交互情况,该方法可以由配置在终端中的数据交互装置来执行,该装置可以由硬件和/或软件来实现,该方法具体包括如下步骤:
步骤110、获取前端页面中预设类型控件的预设数据。
其中,在前端页面中提供的控件均为预先确定的预设类型控件,该预设类型控件是取自预设的控件库中。并且,每个预设类型控件在前端的终端和后端的服务器中都预先定义好对应的数据模型,这样,每个预设类型控件都有自己的数据模型与后端的服务器中的数据库对应。示例的,预设的控件库为mini UI控件库。可选的,通过commonDto机制获取预设数据,commonDto机制会自动扫描前端页面。
步骤120、根据预设类型控件的数据模型,将预设数据组织成控件列表数组。
其中,预设类型控件可以通过在控件HTML标签上的bind和action属性来与后端绑定数据库字段和数据源的接口,具体的,预设类型控件通过bind属性的值与后端数据库字段相对应。通过action属性与后端获取数据源的接口相对应。通常在前端页面初始化或者在需要向后端的服务器提交数据的请求前,扫描前端页面,将前端页面中的各预设类型控件按照其数据模型组织成一个控件列表数组,将每个预设类型控件的预设数据填入自身的数据模型,并将各预设类型控件的数据模型依次排列在该控件列表数组中。可选的,commonDto机制将前端页面的预设类型控件按照其数据模型组织成一个控件列表数组。
步骤130、将数据请求指令和控件列表数组发送至服务器。
其中,将数据请求指令和控件列表数组发送至服务器,以便服务器根据控件列表数组和预设类型控件的数据模型,生成与数据请求指令对应的反馈数据列表。
步骤140、根据接收到的服务器发送的反馈数据列表,设置预设类型控件。
其中,当前端的终端在获取到后端的服务器返回的反馈数据列表后,自动从反馈数据列表里提取数据,找到对应的预设类型控件,把对应的值和数据源设置给预设类型控件。
本实施例的技术方案,通过预先规范前后端数据接口,解决开发的沟通成本比较高,页面上需要新增内容时,开发效率低的问题,实现提高开发效率的效果。
实施例二
图2为本发明实施例二提供的一种数据交互方法的流程图,本实施例的技术方案在上述技术方案的基础上,进一步细化,其中,数据交互方法包括:
步骤210、为前端页面中每个预设类型控件定义对应的数据模型。
其中,数据模型包括同服务器的数据库字段相对应的绑定属性值和同服务器的数据源的接口相对应的动作属性值。可选的,预设类型控件通过bind属性的值与后端服务器的数据库字段相对应。通过action属性与后端服务器中获取数据源的接口相对应。定义的数据模型在终端和服务器中均是预先约定好的,从而保证数据交互时前端和后端能够有统一的规范。
步骤110、获取前端页面中预设类型控件的预设数据。
步骤120、根据预设类型控件的数据模型,将预设数据组织成控件列表数组。
步骤130、将数据请求指令和控件列表数组发送至服务器。
步骤140、根据接收到的服务器发送的反馈数据列表,设置预设类型控件。
本实施例的技术方案,通过预先定义的数据模型,保证前后端数据交互过程中可以准确高效地获取对应的数据。
实施例三
图3为本发明实施例三提供的一种数据交互方法的流程图,本实施例可适用于处于前端的终端和处于后端的服务器进行数据交互情况,该方法可以由配置在服务器中的数据交互装置来执行,该装置可以由硬件和/或软件来实现,该方法具体包括如下步骤:
步骤310、接收终端发送的数据请求指令和控件列表数组。
其中,控件列表数组包括根据前端页面中预设类型控件的数据模型组织的预设类型控件的预设数据。在前端页面中提供的控件均为预先确定的预设类型控件,该预设类型控件是取自预设的控件库中。并且,每个预设类型控件在前端的终端和后端的服务器中都预先定义好对应的数据模型,这样,每个预设类型控件都有自己的数据模型与后端的服务器中的数据库对应。示例的,预设的控件库为mini UI控件库。
步骤320、根据控件列表数组和预设类型控件的数据模型,生成与数据请求指令对应的反馈数据列表。
其中,预设类型控件可以通过在控件HTML标签上的bind和action属性来与后端绑定数据库字段和数据源的接口,具体的,预设类型控件通过bind属性的值与后端数据库字段相对应。通过action属性与后端获取数据源的接口相对应。前端的终端将前端页面中的各预设类型控件按照其数据模型组织成一个控件列表数组,将每个预设类型控件的预设数据填入自身的数据模型,并将各预设类型控件的数据模型依次排列在该控件列表数组中。可选的,commonDto机制将前端页面的预设类型控件按照其数据模型组织成一个控件列表数组。后端的服务器在接收到前端请求的数据后,会自动解析commonDto中的数据,循环遍历里面的预设数据,从数据库中取出需要的值,回填到控件模型上。
步骤330、将反馈数据列表发送至终端。
其中,将反馈数据列表发送至终端,以便终端获取其中的数据,并找到对应的预设类型控件,把对应的值和数据源设置给前端页面中的预设类型控件。
本实施例的技术方案,通过预先规范前后端数据接口,解决开发的沟通成本比较高,页面上需要新增内容时,开发效率低的问题,实现提高开发效率的效果。
实施例四
图4为本发明实施例四提供的一种数据交互方法的流程图,本实施例的技术方案在上述技术方案的基础上,进一步细化,其中,数据交互方法包括:
步骤410、为前端页面中每个预设类型控件定义对应的数据模型。
其中,数据模型包括同服务器的数据库字段相对应的绑定属性值和同服务器的数据源的接口相对应的动作属性值。可选的,接收前端的终端发送的前端页面中每个预设类型控件定义对应的数据模型,并储存。
步骤310、接收终端发送的数据请求指令和控件列表数组。
步骤320、根据控件列表数组和预设类型控件的数据模型,生成与数据请求指令对应的反馈数据列表。
可选的,步骤320具体包括:
提取控件列表数组中的预设类型控件的预设数据;
基于预设类型控件的数据模型,从数据库中取出对应的数据值,回填到预设类型控件的数据模型,以生成反馈数据列表。
步骤330、将反馈数据列表发送至终端。
本实施例的技术方案,通过预先定义的数据模型,保证前后端数据交互过程中可以准确高效地获取对应的数据。
实施例五
图5为本发明实施例五提供的一种数据交互装置的结构示意图,该装置可以设置在终端中,该装置包括:
数据获取模块510,用于获取前端页面中预设类型控件的预设数据;
控件列表数组生成模块520,用于根据预设类型控件的数据模型,将预设数据组织成控件列表数组;
数据请求发送模块530,用于将数据请求指令和控件列表数组发送至服务器,以便服务器根据控件列表数组和预设类型控件的数据模型,生成与数据请求指令对应的反馈数据列表;
控件设置模块540,用于根据接收到的服务器发送的反馈数据列表,设置预设类型控件。
可选的,该装置还包括:
数据模型定义模块,用于在获取前端页面中预设类型控件的预设数据之前,为前端页面中每个预设类型控件定义对应的数据模型;其中,数据模型包括同服务器的数据库字段相对应的绑定属性值和同服务器的数据源的接口相对应的动作属性值。
本实施例的技术方案,通过预先规范前后端数据接口,解决开发的沟通成本比较高,页面上需要新增内容时,开发效率低的问题,实现提高开发效率的效果。
实施例六
图6为本发明实施例六提供的一种数据交互装置的结构示意图,该装置可以设置在服务器中,该装置包括:
数据请求接收模块610,用于接收终端发送的数据请求指令和控件列表数组;其中,控件列表数组包括根据前端页面中预设类型控件的数据模型组织的预设类型控件的预设数据;
反馈数据列表生成模块620,用于根据控件列表数组和预设类型控件的数据模型,生成与数据请求指令对应的反馈数据列表;
反馈数据列表发送模块630,用于将反馈数据列表发送至终端。
可选的,该装置还包括:
数据模型定义模块,用于在接收终端发送的数据请求指令和控件列表数组之前,为前端页面中每个预设类型控件定义对应的数据模型;其中,数据模型包括同服务器的数据库字段相对应的绑定属性值和同服务器的数据源的接口相对应的动作属性值。
可选的,反馈数据列表生成模块,包括:
预设数据提取单元,用于提取控件列表数组中的预设类型控件的预设数据;
反馈数据列表生成单元,用于基于预设类型控件的数据模型,从数据库中取出对应的数据值,回填到预设类型控件的数据模型,以生成反馈数据列表。
本实施例的技术方案,通过预先规范前后端数据接口,解决开发的沟通成本比较高,页面上需要新增内容时,开发效率低的问题,实现提高开发效率的效果。
实施例七
图7为本发明实施例七提供的一种数据交互系统的数据流程图,该系统包括
终端710,其为实施例五中提供的终端;
服务器720,其为实施例六中提供的服务器。
如图7所示,终端获取前端页面中预设类型控件的预设数据。根据预设类型控件的数据模型,将预设数据组织成控件列表数组。将数据请求指令和控件列表数组发送至服务器。根据接收到的服务器发送的反馈数据列表,设置预设类型控件。
如图7所示,服务器接收终端发送的数据请求指令和控件列表数组。根据控件列表数组和预设类型控件的数据模型,生成与数据请求指令对应的反馈数据列表。将反馈数据列表发送至终端。
本实施例的技术方案,通过预先定义的数据模型,保证前后端数据交互过程中可以准确高效地获取对应的数据。
上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
实施例八
图8为本发明实施例八提供的一种终端的结构示意图,如图8所示,该终端包括处理器80、存储器81、输入装置82和输出装置83;终端中处理器80的数量可以是一个或多个,图8中以一个处理器80为例;终端中的处理器80、存储器81、输入装置82和输出装置83可以通过总线或其他方式连接,图8中以通过总线连接为例。
存储器81作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的数据交互方法对应的程序指令/模块(例如,数据交互装置中的数据获取模块510、控件列表数组生成模块520、数据请求发送模块530和控件设置模块540)。处理器80通过运行存储在存储器81中的软件程序、指令以及模块,从而执行终端的各种功能应用以及数据处理,即实现上述的数据交互方法。
存储器81可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器81可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器81可进一步包括相对于处理器80远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置82可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。输出装置83可包括显示屏等显示设备。
实施例就九
图9为本发明实施例九提供的一种服务器的结构示意图,如图9所示,该服务器包括处理器90、存储器91、输入装置92和输出装置93;服务器中处理器90的数量可以是一个或多个,图9中以一个处理器90为例;服务器中的处理器90、存储器91、输入装置92和输出装置93可以通过总线或其他方式连接,图9中以通过总线连接为例。
存储器91作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的数据交互方法对应的程序指令/模块(例如,数据交互装置中的数据请求接收模块610、反馈数据列表生成模块620和反馈数据列表发送模块630)。处理器90通过运行存储在存储器91中的软件程序、指令以及模块,从而执行终端的各种功能应用以及数据处理,即实现上述的数据交互方法。
存储器91可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器91可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器91可进一步包括相对于处理器90远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置92可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。输出装置93可包括显示屏等显示设备。
实施例十
本发明实施例十还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种数据交互方法,该方法包括:
获取前端页面中预设类型控件的预设数据;
根据所述预设类型控件的数据模型,将所述预设数据组织成控件列表数组;
将数据请求指令和所述控件列表数组发送至服务器,以便所述服务器根据所述控件列表数组和所述预设类型控件的数据模型,生成与所述数据请求指令对应的反馈数据列表;
根据接收到的所述服务器发送的所述反馈数据列表,设置所述预设类型控件。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明实施例一或实施例二所提供的数据交互方法中的相关操作。
实施例十一
本发明实施例十一还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种数据交互方法,该方法包括:
接收终端发送的数据请求指令和控件列表数组;其中,所述控件列表数组包括根据前端页面中预设类型控件的数据模型组织的所述预设类型控件的预设数据;
根据所述控件列表数组和所述预设类型控件的数据模型,生成与所述数据请求指令对应的反馈数据列表;
将所述反馈数据列表发送至所述终端。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明实施例三或实施例四所提供的数据交互方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。