CN115640475B - 一种数据采集方法、系统、装置、电子设备及存储介质 - Google Patents
一种数据采集方法、系统、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115640475B CN115640475B CN202211660656.7A CN202211660656A CN115640475B CN 115640475 B CN115640475 B CN 115640475B CN 202211660656 A CN202211660656 A CN 202211660656A CN 115640475 B CN115640475 B CN 115640475B
- Authority
- CN
- China
- Prior art keywords
- data
- record table
- component
- data record
- data acquisition
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种数据采集方法、系统、装置、电子设备及存储介质,涉及网络数据技术领域,方法应用于服务端,方法包括:接收数据填写端发送的数据采集页面的访问地址;向数据填写端发送访问地址对应的各部件的属性信息,以使数据填写端按照各部件的属性信息,渲染包含各部件的数据采集页面,使得登录数据填写端的第一用户在数据采集页面中填写各部件对应的字段的数据,并向服务端发送第一用户填写的数据;获取数据填写端发送的第一用户填写的数据。如此,能够降低人工成本,提高数据采集的效率。
Description
技术领域
本申请涉及网络数据技术领域,特别是涉及一种数据采集方法、系统、装置、电子设备及存储介质。
背景技术
随着网络数据技术的快速发展,在不同的场景中,数据采集端的数据采集需求越来越多样。例如,学校需要对学生的数据(如,姓名、出生日期和入学日期等)进行采集;再例如,物业需要对小区业主的数据(如,居住楼栋、楼层、房间号和车位号等)进行采集。
因此,需要一种方法以提高数据采集的效率,降低数据采集所需的人工成本。
发明内容
本申请实施例的目的在于提供一种数据采集方法、系统、装置、电子设备及存储介质,以降低人工成本,提高数据采集的效率。具体技术方案如下:
本申请实施例的第一方面,首先提供了一种数据采集方法,所述方法应用于服务端,所述方法包括:
接收数据填写端发送的数据采集页面的访问地址;其中,所述访问地址为:所述服务端在接收到数据采集端提交的所述数据采集页面中各部件的属性信息时生成的;所述数据采集页面中各部件的属性信息为:所述数据采集端基于需要采集的数据所属的字段从预设的部件库中选择的;一个部件用于采集一个字段的数据;
向所述数据填写端发送所述访问地址对应的各部件的属性信息,以使所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据;
获取所述数据填写端发送的所述第一用户填写的数据。
在一些实施例中,在所述获取所述数据填写端发送的所述第一用户填写的数据之后,所述方法还包括:
若当前存在第一数据记录表,且不存在第二数据记录表,则将所述第一用户填写的数据记录在所述第一数据记录表中;其中,所述第一数据记录表中的一行用于记录一个用户填写的一个字段的数据;所述第二数据记录表中的一行用于记录一个用户填写的各字段的数据;
若当前存在所述第二数据记录表,则将所述第一用户填写的数据记录在所述第二数据记录表中。
在一些实施例中,所述方法还包括:
当检测到所述第一数据记录表中的行数大于预设阈值时,生成所述第二数据记录表;
将所述第一数据记录表中记录的数据,记录在所述第二数据记录表中。
在一些实施例中,所述若当前存在第一数据记录表,且不存在第二数据记录表,则将所述第一用户填写的数据记录在所述第一数据记录表中,包括:
若当前存在所述第一数据记录表,且不存在所述第二数据记录表,判断所述第一数据记录表中的行数是否大于预设阈值;
若否,则将所述第一用户填写的数据记录在所述第一数据记录表中;
所述方法还包括:
若是,则生成所述第二数据记录表,并将所述第一数据记录表中记录的数据以及所述第一用户填写的数据记录在所述第二数据记录表中。
在一些实施例中,所述方法还包括:
当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第一数据记录表,且不存在所述第二数据记录表,则生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表中;向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表;
当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第二数据记录表,则向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表。
在一些实施例中,所述数据采集页面包含指定部件;
所述第一数据记录表中的指定行中记录有指定数据的索引值;其中,所述指定数据表示所述指定部件对应的字段的数据;所述指定行用于记录用户填写的指定数据;所述第一数据记录表还包含针对所述指定数据的索引行,所述索引行中记录有所述指定数据的索引值和所述指定数据。
在一些实施例中,所述第二数据记录表中记录有所述指定数据的索引值;
所述方法还包括:
在生成所述第二数据记录表时,生成所述第二数据记录表对应的第三数据记录表;其中,所述第三数据记录表中记录有所述指定数据的索引值和所述指定数据。
本申请实施例的第二方面,提供了一种数据采集方法,所述方法应用于数据采集端,所述方法包括:
获取登陆所述数据采集端的第二用户输入的页面生成请求;其中,所述页面生成请求中携带有需要生成的数据采集页面中各部件的部件标识;一个部件用于采集一个字段的数据;
从预设的部件库中选择所述各部件标识所表征的部件的属性信息;
向服务端发送所述各部件标识所表征的部件的属性信息,以使所述服务端在接收到所述各部件标识所表征的部件的属性信息时,生成所述数据采集页面的访问地址;在接收到数据填写端发送的所述访问地址时,向所述数据填写端发送所述访问地址对应的各部件的属性信息,由所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据。
在一些实施例中,所述方法还包括:
向所述服务端发送数据展示请求,以使所述服务端在当前存在第一数据记录表,且不存在第二数据记录表的情况下,生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表;向所述数据采集端发送所述第二数据记录表,以及在当前存在所述第二数据记录表的情况下,向所述数据采集端发送所述第二数据记录表;
接收所述服务端发送的所述第二数据记录表,并显示。
本申请实施例的第三方面,提供了一种数据采集系统,所述系统包括服务端和数据采集端,其中:
所述数据采集端,用于获取登陆所述数据采集端的第二用户输入的页面生成请求;从预设的部件库中选择所述各部件标识所表征的部件的属性信息;向所述服务端发送所述各部件标识所表征的部件的属性信息;
所述服务端,用于在接收到所述各部件标识所表征的部件的属性信息时,生成数据采集页面的访问地址;在接收到数据填写端发送的所述访问地址时,向所述数据填写端发送所述访问地址对应的各部件的属性信息;以使所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面;获取登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据;
所述服务端,还用于获取所述数据填写端发送的所述第一用户填写的数据。
本申请实施例的第四方面,提供了一种数据采集装置,所述装置应用于服务端,所述装置包括:
访问地址接收模块,用于接收数据填写端发送的数据采集页面的访问地址;其中,所述访问地址为:所述服务端在接收到数据采集端提交的所述数据采集页面中各部件的属性信息时生成的;所述数据采集页面中各部件的属性信息为:所述数据采集端基于需要采集的数据所属的字段从预设的部件库中选择的;一个部件用于采集一个字段的数据;
第一信息发送模块,用于向所述数据填写端发送所述访问地址对应的各部件的属性信息,以使所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据;
数据获取模块,用于获取所述数据填写端发送的所述第一用户填写的数据。
在一些实施例中,所述装置还包括:
第一记录模块,用于在所述获取所述数据填写端发送的所述第一用户填写的数据之后,若当前存在第一数据记录表,且不存在第二数据记录表,则将所述第一用户填写的数据记录在所述第一数据记录表中;其中,所述第一数据记录表中的一行用于记录一个用户填写的一个字段的数据;所述第二数据记录表中的一行用于记录一个用户填写的各字段的数据;
第二记录模块,用于若当前存在所述第二数据记录表,则将所述第一用户填写的数据记录在所述第二数据记录表中。
在一些实施例中,所述装置还包括:
第一生成模块,用于当检测到所述第一数据记录表中的行数大于预设阈值时,生成所述第二数据记录表;
第三记录模块,用于将所述第一数据记录表中记录的数据,记录在所述第二数据记录表中。
在一些实施例中,所述第一记录模块,包括:
第一判断子模块,用于若当前存在所述第一数据记录表,且不存在所述第二数据记录表,判断所述第一数据记录表中的行数是否大于预设阈值;
第一记录子模块,用于若所述第一数据记录表中的行数不大于预设阈值,则将所述第一用户填写的数据记录在所述第一数据记录表中;
所述装置还包括:
第二记录子模块,用于若所述第一数据记录表中的行数大于预设阈值,则生成所述第二数据记录表,并将所述第一数据记录表中记录的数据以及所述第一用户填写的数据记录在所述第二数据记录表中。
在一些实施例中,所述装置还包括:
第一数据展示请求接收模块,用于当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第一数据记录表,且不存在所述第二数据记录表,则生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表中;向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表;
第二数据展示请求接收模块,用于当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第二数据记录表,则向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表。
在一些实施例中,所述数据采集页面包含指定部件;
所述第一数据记录表中的指定行中记录有指定数据的索引值;其中,所述指定数据表示所述指定部件对应的字段的数据;所述指定行用于记录用户填写的指定数据;所述第一数据记录表还包含针对所述指定数据的索引行,所述索引行中记录有所述指定数据的索引值和所述指定数据。
在一些实施例中,所述第二数据记录表中记录有所述指定数据的索引值;
所述装置还包括:
第二生成模块,用于在生成所述第二数据记录表时,生成所述第二数据记录表对应的第三数据记录表;其中,所述第三数据记录表中记录有所述指定数据的索引值和所述指定数据。
本申请实施例的第五方面,提供了一种数据采集装置,所述装置应用于数据采集端,所述装置包括:
页面生成请求获取模块,用于获取登陆所述数据采集端的第二用户输入的页面生成请求;其中,所述页面生成请求中携带有需要生成的数据采集页面中各部件的部件标识;一个部件用于采集一个字段的数据;
信息获取模块,用于从预设的部件库中选择所述各部件标识所表征的部件的属性信息;
第二信息发送模块,用于向服务端发送所述各部件标识所表征的部件的属性信息,以使所述服务端在接收到所述各部件标识所表征的部件的属性信息时,生成所述数据采集页面的访问地址;在接收到数据填写端发送的所述访问地址时,向所述数据填写端发送所述访问地址对应的各部件的属性信息,由所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据。
在一些实施例中,所述装置还包括:
数据展示请求发送模块,用于向所述服务端发送数据展示请求,以使所述服务端在当前存在第一数据记录表,且不存在第二数据记录表的情况下,生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表;向所述数据采集端发送所述第二数据记录表,以及在当前存在所述第二数据记录表的情况下,向所述数据采集端发送所述第二数据记录表;
显示模块,用于接收所述服务端发送的所述第二数据记录表,并显示。
本申请实施例的第六方面,提供了一种电子设备,包括:
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的数据采集方法。
本申请实施例的第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的数据采集方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据采集方法。
本申请实施例有益效果:
本申请实施例提供了一种数据采集方法,该方法应用于服务端,该方法包括:接收数据填写端发送的数据采集页面的访问地址;其中,访问地址为:服务端在接收到数据采集端提交的数据采集页面中各部件的属性信息时生成的;数据采集页面中各部件的属性信息为:数据采集端基于需要采集的数据所属的字段从预设的部件库中选择的;一个部件用于采集一个字段的数据;向数据填写端发送访问地址对应的各部件的属性信息,以使数据填写端按照各部件的属性信息,渲染包含各部件的数据采集页面,使得登录数据填写端的第一用户在数据采集页面中填写各部件对应的字段的数据,并向服务端发送第一用户填写的数据;获取数据填写端发送的第一用户填写的数据。
基于上述处理,服务端可以在接收到数据采集端提交的数据采集页面中各部件的属性信息时,生成用于填写数据的数据采集页面的访问地址。后续,在用户需要填写数据时,数据填写端可以通过该数据采集页面的访问地址,生成用于填写数据的数据采集页面。进而,用户可以在该数据采集页面中的各部件中,填写对应的字段的数据。也就是说,预设的部件库中可以存储预先开发的各部件,相应的,数据采集人员可以根据当前需要采集的数据所属的字段,从预设的部件库中选择对应的部件,无需数据采集人员手动编写各部件的代码,进而,能够降低对数据采集人员的要求,降低人工成本,且能够提高数据采集的效率。
当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本申请实施例提供的一种数据采集系统的系统架构图;
图2为本申请实施例提供的一种数据采集方法的流程图;
图3为本申请实施例提供的另一种数据采集方法的流程图;
图4为本申请实施例提供的又一种数据采集方法的流程图;
图5为本申请实施例提供的一种数据采集装置的结构图;
图6为本申请实施例提供的另一种数据采集装置的结构图;
图7为本申请实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本申请保护的范围。
随着网络数据技术的快速发展,通过网络对数据进行采集的技术得到广泛应用,数据采集端的数据采集需求越来越多样。例如,教育部门需要对学生的数据进行采集,如,每一学生的数据可以包括该学生的姓名、年龄、入学日期、学校名称和学校地址。再例如,物业为了规范管理小区环境,需要对小区业主的数据进行采集,如,每一业主的数据可以包括该业主的居住楼栋、楼层、房间号和车位号。
相关技术中,开发人员可以根据数据采集人员的数据采集需求,开发用于填写数据的数据采集页面,以及在数据库中设计相应的表结构,实现对数据进行采集和存储。其中,该数据采集页面中包含至少一个部件,一个部件用于采集一个字段的数据。然而,该方式中,开发数据采集界面需要开发人员和数据采集人员共同参与,导致数据采集的人工成本较高。另外,针对不同的数据采集需求,均需要开发人员编写相应的代码,造成大量的重复劳动,也就会导致数据采集效率较低。
因此,需要一种数据采集方法,以提高数据采集的效率,降低数据采集所需的人工成本。
本申请实施例提供了一种数据采集方法,该方法应用于数据采集系统。参见图1,图1为本申请实施例提供的一种数据采集系统的系统架构图,该数据采集系统包括:服务端101和数据采集端102。服务端101能够与数据填写端进行通信,相应的,服务端101也能够与数据采集端102进行通信。数据采集端102可以为数据采集人员登录的客户端,数据填写端可以为填写数据的人员登录的客户端。
数据采集端102,用于获取登陆数据采集端102的第二用户输入的页面生成请求;从预设的部件库中选择各部件标识所表征的部件的属性信息;向服务端101发送各部件标识所表征的部件的属性信息。
服务端101,用于在接收到各部件标识所表征的部件的属性信息时,生成数据采集页面的访问地址;在接收到数据填写端发送的访问地址时,向数据填写端发送访问地址对应的各部件的属性信息;以使数据填写端按照各部件的属性信息,渲染包含各部件的数据采集页面;获取登录数据填写端的第一用户在数据采集页面中填写各部件对应的字段的数据,并向服务端发送第一用户填写的数据。
服务端101,还用于获取数据填写端发送的第一用户填写的数据。
本申请实施例提供的数据采集系统,服务端可以在接收到数据采集端提交的数据采集页面中各部件的属性信息时,生成用于填写数据的数据采集页面的访问地址。后续,在用户需要填写数据时,数据填写端可以通过该数据采集页面的访问地址,生成用于填写数据的数据采集页面。进而,用户可以在该数据采集页面中的各部件中,填写对应的字段的数据。也就是说,预设的部件库中可以存储预先开发的各部件,相应的,数据采集人员可以根据当前需要采集的数据所属的字段,从预设的部件库中选择对应的部件,无需数据采集人员手动编写各部件的代码,进而,能够降低对数据采集人员的要求,降低人工成本,且能够提高数据采集的效率。
针对上述数据采集系统的实施例,可以参考后续的其他实施例。
参见图2,图2为本申请实施例提供的一种数据采集方法的流程图,该方法应用于服务端,该方法包括:
S201:接收数据填写端发送的数据采集页面的访问地址。
其中,访问地址为:服务端在接收到数据采集端提交的数据采集页面中各部件的属性信息时生成的;数据采集页面中各部件的属性信息为:数据采集端基于需要采集的数据所属的字段从预设的部件库中选择的;一个部件用于采集一个字段的数据。
S202:向数据填写端发送访问地址对应的各部件的属性信息,以使数据填写端按照各部件的属性信息,渲染包含各部件的数据采集页面,使得登录数据填写端的第一用户在数据采集页面中填写各部件对应的字段的数据,并向服务端发送第一用户填写的数据。
S203:获取数据填写端发送的第一用户填写的数据。
基于本申请实施例提供的数据采集方法,服务端可以在接收到数据采集端提交的数据采集页面中各部件的属性信息时,生成用于填写数据的数据采集页面的访问地址。后续,在用户需要填写数据时,数据填写端可以通过该数据采集页面的访问地址,生成用于填写数据的数据采集页面。进而,用户可以在该数据采集页面中各部件中填写对应的字段的数据。也就是说,预设的部件库中可以存储预先开发的各部件,相应的,数据采集人员可以根据当前需要采集的数据所属的字段,从预设的部件库中选择对应的部件,无需数据采集人员手动编写各部件的代码,进而,能够降低对数据采集人员的要求,降低人工成本,且能够提高数据采集的效率。
针对步骤S201,针对每一数据采集页面,该数据采集页面中包含有至少一个用于数据采集的部件,一个部件用于采集一个字段的数据,该至少一个部件构成一个表单。
例如,数据采集端可以获取登陆该数据采集端的用户(即数据采集人员)输入的页面生成请求,获取该页面生成请求中携带的各部件的部件标识,并从预设的部件库中选择各部件标识所表征的部件的属性信息,向服务端发送各部件标识所表征的部件的属性信息。服务端可以接收到该数据采集页面中各部件的属性信息,进而,可以生成该数据采集页面对应的访问地址(也可以称为链接)。不同的数据采集页面对应的访问地址也不同。
一种实现方式中,数据采集端在获取页面生成请求的同时,也可以获取发送该页面生成请求的数据采集人员的身份信息(例如,数据采集人员的身份标识号)。数据采集端向服务端发送各部件标识所表征的部件的属性信息的同时,也可以向服务端发送数据采集人员的身份信息,以及该数据采集页面中各部件构成的表单的表单名称。服务端可以生成表单的表单编号,并记录表单的表单名称和表单编号,以及数据采集人员的身份信息。进而,服务端能够基于该表单编号,生成该数据采集页面的访问地址。即,该数据采集页面的访问地址中携带有该表单编号。其中,表单编号可以为服务端随机生成的,或者,按照数值从小到大的顺序生成的。不同的表单的表单编号不同。
例如,可以通过表(1),对表单的表单名称和表单编号进行定义。
表(1)
其中,id表示自增主键,int表示id的数据类型为整型;manager_id为数据采集人员的身份标识号,int表示manager_id的数据类型为整型;form_name表示表单名称,varchar(128)表示form_name的数据类型为128位内的可变长度字符串;form_no表示表单编号,char(32)表示form_no的数据类型为32位的字符串。
如表(2)所示,表(2)记录了两个表单的表单名称、表单编号与数据采集人员的身份标识号的对应关系。
表(2)
其中,id表示自增主键,manager_id表示数据采集人员的身份标识号,form_name表示表单名称,form_no表示表单编号。
表(2)中第二行的数据表示自增主键为1的表单是身份标识号为manager_1的数据采集人员创建的,该表单的表单名称为:学生信息采集;该表单的编号为:form_001。表(2)中第三行的数据表示:自增主键为2的表单是身份标识号为manager_1的数据采集人员创建的;该表单的表单名称为:学校信息采集;该表单的编号为:form_002。
预设的部件库中包含各部件的属性信息。针对任一部件,该部件的属性可以包含:自增主键、表单编号、属性序号、展示名称、部件名称、是否是基本类型、数据类型名称,以及关联到的表单编号。其中,该部件的表单编号表示该部件所属表单的表单编号;该部件的属性序号表示该部件在所属表单中的位置;该部件的展示名称表示该部件在数据采集页面中的显示名称;该部件的部件名称表示在定义该部件时使用的名称;是否是基本类型用于判断该部件是否是基本类型,若不是基本类型,则表示该部件与其他表单关联;数据类型表示该部件对应的字段的数据类型;关联的表单编号表示与该部件关联的其他表单的表单编号。
在本申请中,与其他表单关联的部件也可以称为指定部件,该指定部件对应的字段的数据可以称为指定数据,具体的,将在后续实施例中详细介绍。
例如,可以通过表(3)对部件的各属性进行定义:
表(3)
其中,id表示自增主键,int表示id的数据类型为整型;form_no表示表单编号,char(32)表示form_no的数据类型为32位的字符串;field_num表示属性序号,varchar(64)表示field_num的数据类型为64位内的可变长度字符串;field_name表示展示名称,varchar(128)表示field_name的数据类型为128位内的可变长度字符串;widget_name表示部件名称,varchar(64)表示widget_name的数据类型为64位内的可变长度字符串;is_base_data用于表示该部件是否是基本类型,bool表示is_base_data的数据类型为布尔型变量;data_type表示该部件对应的字段的数据类型,varchar(16)表示表示data_type的数据类型为16位的可变长度字符串;assoc_form_no表示该部件与关联的其他表单的表单编号,char(32)表示assoc_form_no的数据类型为32位的字符串。
例如,数据采集端在对学生的数据进行采集时,需要采集每一学生的姓名、年龄、入学日期、学校名称和学校地址。针对每一学生,服务端可以基于表单名称为“学生信息采集”的表单,采集姓名、年龄和入学日期各字段的数据,并基于表单名称为“学校信息采集”的表单,采集学校名称和学校地址各字段的数据。
例如,对于表单名称为“学生信息采集”的表单,该表单中各部件的属性信息可以参见表(4);对于表单名称为“学校信息采集”的表单,该表单中各部件的属性信息可以参见表(5)。
表(4)
表(5)
其中,id表示自增主键,form_no表示表单编号,field_name表示展示名称,field_num表示属性序号,widget_name表示部件名称,is_base_data用于表示该部件是否是基本类型,data_type表示数据类型,assoc_form_no表示与该部件关联的其他表单的表单编号。
表(4)中第二行的数据表示自增主键为1的部件;该部件的表单编号为:form_001;该部件的展示名称为:姓名;该部件的属性序号为:field_1;该部件的部件名称为:ch_name_widget;该部件是基本类型;该部件的数据类型为varchar(32)。
表(4)中第三行的数据表示自增主键为2的部件;该部件的表单编号为:form_001;该部件的展示名称为:年龄;该部件的属性序号为:field_2;该部件的部件名称为:age_widget;该部件是基本类型;该部件的数据类型为tinyint;其中,tinyint表示-128到127的整数。
表(4)中第四行的数据表示自增主键为3的部件;该部件的表单编号为:form_001,该部件的展示名称为:入学日期;该部件的属性序号为:field_3;该部件的部件名称为:date_widget;该部件是基本类型;该部件的数据类型为char(8)。
表(4)中第五行的数据表示自增主键为4的部件;该部件的表单编号为:form_001;该部件的展示名称为:学校;该部件的属性序号为:field_4;该部件的部件名称为:date_widget;该部件不是基本类型;该部件的关联的表单编号为:form_002。
表(5)中第二行的数据表示自增主键为6的部件;该部件的表单编号为:form_002;该部件的展示名称为:学校名称;该部件的属性序号为:field_1,该部件的部件名称为:school_name_widget;该部件是基本类型;该部件的数据类型为varchar(32)。
表(5)中第三行的数据表示自增主键为7的部件;该部件的表单编号为:form_002;该部件的展示名称为:学校地址;该部件的属性序号为field_2;该部件的部件名称为:add_widget;该部件是基本类型;该部件的数据类型为varchar(32)。
可以理解的是,表(4)中第五行的数据所表示的部件不是基本类型的部件,即,该部件与其他表单向关联。且基于该行记录的数据可知,该部件的关联的表单编号为:form_002,即,该部件与表单编号为form_002的表单相关联。基于表(2)可以,表单编号为form_002的表单,对应的表单名称为:学校信息采集。即,该部件与表单名称为“学校信息采集”的表单相关联。
针对步骤S202和步骤S203,第一用户表示登录数据填写端的用户,即,任一需要填写数据的人员。
例如,服务端在接收到数据采集页面中的各部件标识所表征的部件的属性信息,生成该数据采集页面的访问地址时,可以记录该各部件的属性信息与该数据采集页面的对应关系。进而,当接收到访问地址时,确定该访问地址对应的各部件的属性信息,并向数据填写端发送访问地址对应的各部件的属性信息。
另外,服务端还可以记录该数据采集页面中各部件的属性信息与表单编号的对应关系,进而,当服务端接收到访问地址时,提取该访问地址中携带的表单编号,并基于上述对应关系,确定该表单编号对应的各部件的属性信息,并向数据填写端发送该各部件的属性信息。数据填写端在接收到各部件的属性信息后,可以按照各部件的属性信息,渲染包含各部件的数据采集页面。登录数据填写端的用户在数据采集页面中填写各部件对应的字段的数据。进而,数据填写端可以向服务端发送用户填写的数据,以及登录数据填写端的用户的身份信息(例如,用户的身份标识号)。服务端可以获取数据填写端发送的用户填写的数据,以及登录数据填写端的用户的身份信息。
一种实现方式中,服务端可以预先定义各字段的数据的属性信息。针对任一数据,该数据的属性包含:自增主键、用户的身份标识号、数据编号、属性序号、属性值、关联的数据编号。
例如,可以通过表(6)对数据的各属性进行定义:
表(6)
其中,id表示自增主键,int表示id的数据类型为整型;user_id表示用户的身份标识号,int表示user_id的数据类型为整型;data_no表示数据编号,char(64)表示data_no的数据类型为64位的字符串;field_num表示属性序号,varchar(64)表示field_num的数据类型为64位内的可变长度字符串;value表示属性值,text表示value的数据类型为文本;若该字段的数据不是基本类型,则assoc_data_no表示关联的数据编号;若该字段的数据是基本类型,则assoc_data_no为空。
服务端在接收到的第一用户填写的各字段的数据后,可以确定各数据所属的表单。
例如,可以通过表(7),结合表(6)中定义的data_no,确定各数据的数据编号对应的表单编号,进而,确定各数据所属的表单。
表(7)
其中,id表示自增主键,int表示id的数据类型为整型;form_no表示表单编号,char(32)表示form_no的数据类型为32位的字符串;data_no表示数据编号,char(64)表示data_no的数据类型为64位的字符串。
例如,表(8)记录了两对表单编号与数据编号的对应关系。
表(8)
其中,id表示自增主键,form_no表示表单编号,data_no表示数据编号。
表(8)中第二行的数据表示数据编号为data_no_1的字段的数据;该数据的表单编号为:form_001。表(8)中第三行的数据表示数据编号为data_no_2的字段的数据,该数据的表单编号为:form_002。
在一些实施例中,在获取数据填写端发送的用户填写的数据后,服务端对该数据进行存储。如图3所示,图3为本申请实施例提供的另一种数据采集方法的流程图,在图2的基础上,在步骤S203之后,该方法还包括:
S204:若当前存在第一数据记录表,且不存在第二数据记录表,则将第一用户填写的数据记录在第一数据记录表中。
其中,第一数据记录表中的一行用于记录一个用户填写的一个字段的数据;第二数据记录表中的一行用于记录一个用户填写的各字段的数据。
S205:若当前存在第二数据记录表,则将第一用户填写的数据记录在第二数据记录表中。
当服务端获取到的用户填写的数据较少,即服务端存储的数据量较少时,可以基于第一数据记录表存储各用户填写的数据。后续,当服务端获取到的用户填写的数据较多,即服务端存储的数据量较大时,可以基于二维表进行存储。
服务端在接收到第一用户填写的数据时,若当前存在第一数据记录表,且不存在第二数据记录表。针对每一用户填写的各字段的数据,可以在第一数据记录表中的一行,记录一个字段的用户的身份标识号、数据编号、属性序号、属性值和关联的数据编号。例如,第一数据记录表如表(9)所示:
表(9)
其中,id表示自增主键,user_id表示用户的身份标识号,data_no表示数据编号,field_num表示属性序号,value表示属性值,以及assoc_data_no表示关联的数据编号。
表(9)中第二行的数据表示自增主键为1,用户的身份标识号为user_id_1的字段的数据,该数据的数据编号为:data_no_1;该数据的属性序号为:field_no_1;该数据的属性值为:张三。表(9)中第三行的数据表示自增主键为2,用户的身份标识号为user_id_1的字段的数据,该数据的数据编号为:data_no_1;该数据的属性序号为field_no_2;该数据的属性值为:18。表(9)中第四行的数据表示自增主键为3,用户的身份标识号为user_id_1的字段的数据,该数据的数据编号为:data_no_1,该数据的属性序号为:field_no_3,该数据的属性值为:20220901。
一种实现方式中,数据采集页面包含指定部件;第一数据记录表中的指定行中记录有指定数据的索引值。
其中,指定数据表示指定部件对应的字段的数据;指定行用于记录用户填写的指定数据;第一数据记录表还包含针对指定数据的索引行,索引行中记录有指定数据的索引值和指定数据。
指定行中记录的指定数据的索引值为:关联的数据编号;包含针对指定数据的索引行为:该关联的数据编号一致的数据编号所属的行。
例如,表(9)中第五行的数据表示自增主键为4,用户的身份标识号为user_id_1的字段的数据,该数据的数据编号为:data_no_1;该数据的属性序号为field_no_4;该数据的关联的数据编号为data_no_2。表(9)中第六行的数据表示自增主键为5,用户的身份标识号为user_id_1的字段的数据,该数据的数据编号为data_no_2;该数据的属性序号为field_no_1;该数据的属性值为北京大学。表(9)中第七行的数据表示自增主键为6,用户的身份标识号为user_id_1的字段的数据,该数据的数据编号为data_no_2;该数据的属性序号为field_no_2;该数据的属性值为北京市海淀区。也就是说,上述表(9)中第五行为指定行,指定行中记录有指定数据的索引值(即,assoc_data_no)为data_no_2。表(9)中第六行为索引行,该索引行中记录有指定数据的索引值(即,data_no)为data_no_2,以及指定数据(即,value)为北京大学;表(9)中第七行为索引行,该索引行中记录有指定数据的索引值(即,data_no)为data_no_2,以及指定数据(即,value)为北京市海淀区。
可以理解的是,针对表(9)中,该学生填写的学校名称和学校地址可能与其他学生填写的学校名称和学校地址一致。也就是说,多个用户填写的信息中可能存在某些字段(即指定部件对应的字段)的数据存在大量重复,因此,可以在指定行中记录索引值,以根据该索引值查询到索引行,进而,可以获取索引行中记录的这些字段的数据。基于上述处理,能够避免存储大量的重复数据,进而,能够减少存储多个用户填写的数据时所需的内存资源。
服务端在接收到用户填写的数据时,若当前存在第二数据记录表。可以在第二数据记录表中的一行,记录该用户填写的数据各字段的数据。
一个第二数据记录表对应一个表单。例如,第二数据记录表如表(10)所示:
表(10)
其中,id表示自增主键,user_id表示用户的身份标识号,data_no表示数据编号,field_no_1-field_no_4表示各数据的属性序号。
表(10)中第二行的数据表示自增主键为1,用户的身份标识号为user_id_1的学生的学生信息;该学生的姓名为:张三;该学生的年龄为:18;该学生的入学日期为:20220901;由于field_no_4对应的字段的数据不是基本类型,field_no_4中记录的data_no_2表示关联的数据编号。
一种实现方式中,第二数据记录表中记录有指定数据的索引值。该方法还包括:在生成第二数据记录表时,生成第二数据记录表对应的第三数据记录表。
其中,第三数据记录表中记录有指定数据的索引值和指定数据。一个第三数据记录表对应一个指定部件。例如,第三数据记录表如表(11)所示:
表(11)
表(10)中记录有指定数据的索引值(即field_no_4)为:data_no_2。表(11)中记录有用户的身份标识号(即user_id)为:user_id_1,指定数据的索引值(即,data_no)为:data_no_2,以及指定数据,指定数据包括:field_no_1对应的北京大学,以及field_no_2对应的北京市海淀区。
通过表(10)中field_no_4字段,可以查询到data_no字段为“data_no_2”的行,即表(11)中的第二行,进而,基于该行中记录的数据,可以确定表(10)中第二行的学生填写的学校名称为北京大学,学校地址为北京市海淀区。
基于上述处理,针对第一用户填写的各字段的数据,可以基于第二数据记录表和第三数据记录表分别进行存储。例如,可以基于第二数据记录表记录第一用户填写的差异较大的字段的数据,如,姓名、年龄和入学日期,基于第三数据记录表记录第一用户填写的存在重复的字段的数据,如,学校名称和学校地址。进而,能够避免存储大量的重复数据,进而,能够减少存储多个第一用户填写的数据时所需的内存资源。
另外,由于对第一数据记录表进行查询时,需要开发人员预先编写用于查询的代码,对第一数据记录表中的数据逐行进行查询。而对第二数据记录表进行查询时,可以基于数据库语言,对第二数据记录表中的数据进行查询。也就是说,针对表(9),查询一个学生填写的数据至少需要查询6行。因此,将第一数据记录表中的数据存储至第二数据记录表后,能够基于数据库语言对第二数据表进行查询,且查询一个学生填写的各字段的数据时,只需要查询1行。进而,也就能够提高查询的效率。
在一些实施例中,该方法还包括:
当检测到第一数据记录表中的行数大于预设阈值时,生成第二数据记录表;将第一数据记录表中记录的数据,记录在第二数据记录表中。
即,判断第一数据记录表中存储数据的数据量与将用户填写的数据存储至第一数据表中可以异步进行,例如,可以通过一个线程对第一数据记录表中存储数据的数据量进行判断;通过另一个线程将用户填写的数据存储至第一数据表中。
预设阈值为技术人员根据业务需求预先设置的,例如,预设阈值可以为1000。
一种实现方式中,针对任一字段的数据,服务端可以判断该数据是否为基本类型。若该数据为基本类型,则可以基于该数据的数据编号,以及属性序号,确定该数据所属的表单,以及该数据在表单中的位置。
例如,针对第一数据记录表中的任一行的数据,若该行中assoc_data_no(关联的数据编号)中的值为空,则表示该行的数据为基本类型,则服务端可以获取该行中data_no(数据编号)中的值,并基于上述表(7)确定该数据所属的表单编号;服务端可以获取该行中field_num(属性序号)中的值,并基于上述表(6)确定该数据在所属的表单中的位置;进而,可以将在表单中的相应位置,写入该行的value(属性值)中的值。
若该数据不为基本类型,则可以基于该数据的关联的数据编号,确定该数据所属的表单,进而,确定所需生成的第三数据记录表。
例如,针对第一数据记录表中的任一行的数据,若该行中assoc_data_no(关联的数据编号)中的值不为空,则可以获取该assoc_data_no中的值对应的表单编号,该表单编号对应的表单,即为所需生成的第三数据记录表。进而,服务端可以获取该行中field_num(属性序号)中的值,并基于上述表(6)确定该数据在所属的表单中的位置;进而,可以将在表单中的相应位置,写入该行的value(属性值)中的值。
由于当第一数据记录表中存储的数据量较小时,基于第一数据记录表进行查询的效率与建立第二数据记录表,基于第二记录表进行查询的效率差别较小,因此,可以在第一数据记录表中的数据的数据量较小时,直接基于第一数据记录表对用户填写的数据进行记录或查询。
另外,在生成第二数据记录表后,服务端可以删除第一数据记录表。进而,可以避免造成存储空间的浪费。
在一些实施例中,上述步骤S204,包括:
步骤1:若当前存在第一数据记录表,且不存在第二数据记录表,判断第一数据记录表中的行数是否大于预设阈值。
步骤2:若否,则将第一用户填写的数据记录在第二数据记录表中。
该方法还包括:
步骤3:若是,则生成第二数据记录表,并将第一数据记录表中记录的数据以及第一用户填写的数据记录在第二数据记录表中。
即,判断第一数据记录表中存储数据的数据量与将用户填写的数据存储至第一数据表中可以同步进行。例如,可以通过一个线程,在将用户填写的数据存储至第一数据表后,对第一数据记录表中存储数据的数据量进行判断。
一种实现方式中,服务端能够在获取到每一用户填写的数据后,判断第一数据记录表的行数是否大于预设阈值。生成第二数据记录表的方式与上述实施例中生成第二数据记录表的方式一致,可以参考相关介绍。
由于当第一数据记录表中存储的数据量较小时,基于第一数据记录表进行查询的效率与建立第二数据记录表,基于第二记录表进行查询的效率差别较小,因此,可以在第一数据记录表中的数据的数据量较小时,直接基于第一数据记录表对用户填写的数据进行记录或查询。
在一些实施例中,该方法还包括:
步骤一:当接收到数据采集端发送的数据展示请求时,若当前存在第一数据记录表,且不存在第二数据记录表,则生成第二数据记录表;将第一数据记录表中记录的数据记录在第二数据记录表中;向数据采集端发送第二数据记录表,以使数据采集端显示第二数据记录表。
步骤二:当接收到数据采集端发送的数据展示请求时,若当前存在第二数据记录表,则向数据采集端发送第二数据记录表,以使数据采集端显示第二数据记录表。
一种实现方式中,服务端可以预先记录数据采集人员的身份信息与表单编号的对应关系。进而,数据采集端在向服务端请求展示采集到的数据时,可以向服务端发送数据展示请求,该数据展示请求中可以携带有当前登陆数据采集端的用户的身份信息和所需展示的表单编号。进而,服务端可以对该身份信息与表单编号进行验证,并在验证通过后向该数据采集端发送该表单编号对应的第二数据记录表。
服务端在接收到数据展示请求时,若当前存在第一数据记录表,且不存在第二数据记录表,则服务端可以根据当前第一数据记录表中的数据,生成第二数据记录表,并向数据采集端发送第二数据记录表。数据采集端可以接收第二数据记录表,并进行显示。生成第二数据记录表的过程可以参考上述实施例中的相关描述。后续,服务端可以将数据采集端发送的数据记录在第二数据记录表中。也就是说,数据采集端可以通过数据展示请求,触发服务端生成第二数据记录表。
若当前存在第二数据记录表,则服务端可以直接向数据采集端发送第二数据记录表。数据采集端可以接收第二数据记录表,并进行显示。
基于上述处理,登陆数据采集端的用户可以通过向服务端发送页面生成请求,使得服务端生成第二数据记录表。即,登陆数据采集端的用户可以通过手动操作,主动确定生成第二数据记录表的时机。后续,用户能够根据第二数据记录表查询相应的数据,进一步提高查询的效率。
本申请实施例还提供了一种数据采集方法,该方法应用于数据采集端,参见图4,图4为本申请实施例提供的又一种数据采集方法的流程图,该方法包括:
S401:获取登陆数据采集端的第二用户输入的页面生成请求。
其中,页面生成请求中携带有需要生成的数据采集页面中各部件的部件标识;一个部件对应需要采集一个字段的数据。
S402:从预设的部件库中选择各部件标识所表征的部件的属性信息。
S403:向服务端发送各部件标识所表征的部件的属性信息,以使服务端在接收到各部件标识所表征的部件的属性信息时,生成数据采集页面的访问地址;在接收到数据填写端发送的访问地址时,向数据填写端发送访问地址对应的各部件的属性信息,由数据填写端按照各部件的属性信息,渲染包含各部件的数据采集页面,使得登录数据填写端的第一用户在数据采集页面中填写各部件对应的字段的数据,并向服务端发送第一用户填写的数据。
基于本申请实施例提供的数据采集方法,服务端可以在接收到数据采集端提交的数据采集页面中各部件的属性信息时,生成用于填写数据的数据采集页面的访问地址。后续,在用户需要填写数据时,数据填写端可以通过该数据采集页面的访问地址,生成用于填写数据的数据采集页面。进而,用户可以在该数据采集页面中各部件中填写对应的字段的数据。也就是说,预设的部件库中可以存储预先开发的各部件,相应的,数据采集人员可以根据当前需要采集的数据所属的字段,从预设的部件库中选择对应的部件,无需数据采集人员手动编写各部件的代码,进而,能够降低对数据采集人员的要求,降低人工成本,且能够提高数据采集的效率。
针对步骤S401和步骤S402,第二用户可以根据当前的数据采集需求,基于预设的部件库中存储的各部件的属性信息,选择与数据采集需求相匹配的部件的部件标识。
例如,数据采集端可以显示用于添加部件的页面(也可以称为部件选择页面),在该页面中,用户可以填写数据采集页面中表单的表单名称。另外,用户可以选择数据采集页面包含的部件,如,用于输入时间的部件、用于上传文件的部件和用于输入数字的部件。当用户点击页面中任一部件的“添加”按钮时,数据采集端可以基于该部件的部件标识,从预设的部件库中获取该部件标识所表征的部件的属性信息。
一种实现方式中,当预设的部件库中不存在用户所需的部件时,用户也可以根据当前的数据采集需求,建立并上传相应的部件(可以称为自义定部件)。
针对步骤S403,数据采集端可以向服务端发送选择出的各部件标识所表征的部件的属性信息。
例如,上述部件选择页面中可以设置用于向服务端发送各部件标识所表征的部件的属性信息的“提交”按钮。当第二用户点击该按钮时,数据采集端可以向服务端发送各部件标识所表征的部件的属性信息。相应的,服务端可以基于各部件标识所表征的部件的属性信息生成访问地址,并向数据采集端发送该访问地址。
另外,数据采集端还可以将该访问地址发送给需要填写数据的用户(即第一用户)登陆的客户端(即数据填写端)。后续,数据填写端可以向服务端发送该访问地址,以渲染数据采集页面,使得第一用户可以在该数据采集页面中填写相应的数据。
在一些实施例中,该方法还包括:
步骤三:向服务端发送数据展示请求,以使服务端在当前存在第一数据记录表,且不存在第二数据记录表的情况下,生成第二数据记录表;将第一数据记录表中记录的数据记录在第二数据记录表;向数据采集端发送第二数据记录表,以及在当前存在第二数据记录表的情况下,向数据采集端发送第二数据记录表。
步骤四:接收服务端发送的第二数据记录表,并显示。
服务端在接收到数据采集端发送的数据展示请求后,可以判断当前是否存在第二数据记录表。若不存在,则可以基于第一数据记录表生成第二数据记录表和第三数据记录表。其中,基于第一数据记录表生成第二数据记录表和第三数据记录表的过程可以参考上述实施例。
一种实现方式中,服务端在接收到数据采集端发送的数据展示请求后,可以向该数据采集端发送第二数据记录表和第三数据记录表中的所有数据。
或者,服务端可以预先记录数据采集人员的身份信息与表单编号的对应关系。数据采集端在向服务端请求展示采集到的数据时,可以向服务端发送数据展示请求,该数据展示请求中可以携带有当前登陆数据采集端的用户的身份信息和所需展示的表单编号。进而,服务端可以对该身份信息与表单编号进行验证,并在验证通过后向该数据采集端发送该表单编号对应的第二数据记录表和第三数据记录表。
基于相同的发明构思,本申请实施例还提供了一种数据采集装置,所述装置应用于服务端,参见图5,图5为本申请实施例提供的一种数据采集装置的结构图,该装置包括:
访问地址接收模块501,用于接收数据填写端发送的数据采集页面的访问地址;其中,所述访问地址为:所述服务端在接收到数据采集端提交的所述数据采集页面中各部件的属性信息时生成的;所述数据采集页面中各部件的属性信息为:所述数据采集端基于需要采集的数据所属的字段从预设的部件库中选择的;一个部件用于采集一个字段的数据;
第一信息发送模块502,用于向所述数据填写端发送所述访问地址对应的各部件的属性信息,以使所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据;
数据获取模块503,用于获取所述数据填写端发送的所述第一用户填写的数据。
在一些实施例中,所述装置还包括:
第一记录模块,用于在所述获取所述数据填写端发送的所述第一用户填写的数据之后,若当前存在第一数据记录表,且不存在第二数据记录表,则将所述第一用户填写的数据记录在所述第一数据记录表中;其中,所述第一数据记录表中的一行用于记录一个用户填写的一个字段的数据;所述第二数据记录表中的一行用于记录一个用户填写的各字段的数据;
第二记录模块,用于若当前存在所述第二数据记录表,则将所述第一用户填写的数据记录在所述第二数据记录表中。
在一些实施例中,所述装置还包括:
第一生成模块,用于当检测到所述第一数据记录表中的行数大于预设阈值时,生成所述第二数据记录表;
第三记录模块,用于将所述第一数据记录表中记录的数据,记录在所述第二数据记录表中。
在一些实施例中,所述第一记录模块,包括:
第一判断子模块,用于若当前存在所述第一数据记录表,且不存在所述第二数据记录表,判断所述第一数据记录表中的行数是否大于预设阈值;
第一记录子模块,用于若所述第一数据记录表中的行数不大于预设阈值,则将所述第一用户填写的数据记录在所述第一数据记录表中;
所述装置还包括:
第二记录子模块,用于若所述第一数据记录表中的行数大于预设阈值,则生成所述第二数据记录表,并将所述第一数据记录表中记录的数据以及所述第一用户填写的数据记录在所述第二数据记录表中。
在一些实施例中,所述装置还包括:
第一数据展示请求接收模块,用于当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第一数据记录表,且不存在所述第二数据记录表,则生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表中;向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表;
第二数据展示请求接收模块,用于当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第二数据记录表,则向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表。
在一些实施例中,所述数据采集页面包含指定部件;
所述第一数据记录表中的指定行中记录有指定数据的索引值;其中,所述指定数据表示所述指定部件对应的字段的数据;所述指定行用于记录用户填写的指定数据;所述第一数据记录表还包含针对所述指定数据的索引行,所述索引行中记录有所述指定数据的索引值和所述指定数据。
在一些实施例中,所述第二数据记录表中记录有所述指定数据的索引值;
所述装置还包括:
第二生成模块,用于在生成所述第二数据记录表时,生成所述第二数据记录表对应的第三数据记录表;其中,所述第三数据记录表中记录有所述指定数据的索引值和所述指定数据。
基于相同的发明构思,本申请实施例还提供了一种数据采集装置,所述装置应用于数据采集端,参见图6,图6为本申请实施例提供的另一种数据采集装置的结构图,该装置包括:
页面生成请求获取模块601,用于获取登陆所述数据采集端的第二用户输入的页面生成请求;其中,所述页面生成请求中携带有需要生成的数据采集页面中各部件的部件标识;一个部件用于采集一个字段的数据;
信息获取模块602,用于从预设的部件库中选择所述各部件标识所表征的部件的属性信息;
第二信息发送模块603,用于向服务端发送所述各部件标识所表征的部件的属性信息,以使所述服务端在接收到所述各部件标识所表征的部件的属性信息时,生成所述数据采集页面的访问地址;在接收到数据填写端发送的所述访问地址时,向所述数据填写端发送所述访问地址对应的各部件的属性信息,由所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据。
在一些实施例中,所述装置还包括:
数据展示请求发送模块,用于向所述服务端发送数据展示请求,以使所述服务端在当前存在第一数据记录表,且不存在第二数据记录表的情况下,生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表;向所述数据采集端发送所述第二数据记录表,以及在当前存在所述第二数据记录表的情况下,向所述数据采集端发送所述第二数据记录表;
显示模块,用于接收所述服务端发送的所述第二数据记录表,并显示。
本申请实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现上述任一所述的数据采集方法的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一数据采集方法的步骤。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一数据采集方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk (SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统、装置、电子设备、计算机可读存储介质,以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (21)
1.一种数据采集方法,其特征在于,所述方法应用于服务端,所述方法包括:
接收数据填写端发送的数据采集页面的访问地址;其中,所述访问地址为:所述服务端在接收到数据采集端提交的所述数据采集页面中各部件的属性信息时生成的;所述数据采集页面中各部件的属性信息为:所述数据采集端基于需要采集的数据所属的字段从预设的部件库中选择的;一个部件用于采集一个字段的数据;
向所述数据填写端发送所述访问地址对应的各部件的属性信息,以使所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据;
获取所述数据填写端发送的所述第一用户填写的数据。
2.根据权利要求1所述的方法,其特征在于,在所述获取所述数据填写端发送的所述第一用户填写的数据之后,所述方法还包括:
若当前存在第一数据记录表,且不存在第二数据记录表,则将所述第一用户填写的数据记录在所述第一数据记录表中;其中,所述第一数据记录表中的一行用于记录一个用户填写的一个字段的数据;所述第二数据记录表中的一行用于记录一个用户填写的各字段的数据;
若当前存在所述第二数据记录表,则将所述第一用户填写的数据记录在所述第二数据记录表中。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当检测到所述第一数据记录表中的行数大于预设阈值时,生成所述第二数据记录表;
将所述第一数据记录表中记录的数据,记录在所述第二数据记录表中。
4.根据权利要求2所述的方法,其特征在于,所述若当前存在第一数据记录表,且不存在第二数据记录表,则将所述第一用户填写的数据记录在所述第一数据记录表中,包括:
若当前存在所述第一数据记录表,且不存在所述第二数据记录表,判断所述第一数据记录表中的行数是否大于预设阈值;
若否,则将所述第一用户填写的数据记录在所述第一数据记录表中;
所述方法还包括:
若是,则生成所述第二数据记录表,并将所述第一数据记录表中记录的数据以及所述第一用户填写的数据记录在所述第二数据记录表中。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第一数据记录表,且不存在所述第二数据记录表,则生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表中;向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表;
当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第二数据记录表,则向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表。
6.根据权利要求2所述的方法,其特征在于,所述数据采集页面包含指定部件;
所述第一数据记录表中的指定行中记录有指定数据的索引值;其中,所述指定数据表示所述指定部件对应的字段的数据;所述指定行用于记录用户填写的指定数据;所述第一数据记录表还包含针对所述指定数据的索引行,所述索引行中记录有所述指定数据的索引值和所述指定数据。
7.根据权利要求6所述的方法,其特征在于,所述第二数据记录表中记录有所述指定数据的索引值;
所述方法还包括:
在生成所述第二数据记录表时,生成所述第二数据记录表对应的第三数据记录表;其中,所述第三数据记录表中记录有所述指定数据的索引值和所述指定数据。
8.一种数据采集方法,其特征在于,所述方法应用于数据采集端,所述方法包括:
获取登陆所述数据采集端的第二用户输入的页面生成请求;其中,所述页面生成请求中携带有需要生成的数据采集页面中各部件的部件标识;一个部件用于采集一个字段的数据;
从预设的部件库中选择所述各部件标识所表征的部件的属性信息;
向服务端发送所述各部件标识所表征的部件的属性信息,以使所述服务端在接收到所述各部件标识所表征的部件的属性信息时,生成所述数据采集页面的访问地址;在接收到数据填写端发送的所述访问地址时,向所述数据填写端发送所述访问地址对应的各部件的属性信息,由所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
向所述服务端发送数据展示请求,以使所述服务端在当前存在第一数据记录表,且不存在第二数据记录表的情况下,生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表;向所述数据采集端发送所述第二数据记录表,以及在当前存在所述第二数据记录表的情况下,向所述数据采集端发送所述第二数据记录表;
接收所述服务端发送的所述第二数据记录表,并显示。
10.一种数据采集系统,其特征在于,所述系统包括服务端和数据采集端,其中:
所述数据采集端,用于获取登陆所述数据采集端的第二用户输入的页面生成请求;其中,所述页面生成请求中携带有需要生成的数据采集页面中各部件的部件标识;一个部件用于采集一个字段的数据;从预设的部件库中选择所述各部件标识所表征的部件的属性信息;向所述服务端发送所述各部件标识所表征的部件的属性信息;
所述服务端,用于在接收到所述各部件标识所表征的部件的属性信息时,生成数据采集页面的访问地址;在接收到数据填写端发送的所述访问地址时,向所述数据填写端发送所述访问地址对应的各部件的属性信息;以使所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面;获取登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据;
所述服务端,还用于获取所述数据填写端发送的所述第一用户填写的数据。
11.一种数据采集装置,其特征在于,所述装置应用于服务端,所述装置包括:
访问地址接收模块,用于接收数据填写端发送的数据采集页面的访问地址;其中,所述访问地址为:所述服务端在接收到数据采集端提交的所述数据采集页面中各部件的属性信息时生成的;所述数据采集页面中各部件的属性信息为:所述数据采集端基于需要采集的数据所属的字段从预设的部件库中选择的;一个部件用于采集一个字段的数据;
第一信息发送模块,用于向所述数据填写端发送所述访问地址对应的各部件的属性信息,以使所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据;
数据获取模块,用于获取所述数据填写端发送的所述第一用户填写的数据。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第一记录模块,用于在所述获取所述数据填写端发送的所述第一用户填写的数据之后,若当前存在第一数据记录表,且不存在第二数据记录表,则将所述第一用户填写的数据记录在所述第一数据记录表中;其中,所述第一数据记录表中的一行用于记录一个用户填写的一个字段的数据;所述第二数据记录表中的一行用于记录一个用户填写的各字段的数据;
第二记录模块,用于若当前存在所述第二数据记录表,则将所述第一用户填写的数据记录在所述第二数据记录表中。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第一生成模块,用于当检测到所述第一数据记录表中的行数大于预设阈值时,生成所述第二数据记录表;
第三记录模块,用于将所述第一数据记录表中记录的数据,记录在所述第二数据记录表中。
14.根据权利要求12所述的装置,其特征在于,所述第一记录模块,包括:
第一判断子模块,用于若当前存在所述第一数据记录表,且不存在所述第二数据记录表,判断所述第一数据记录表中的行数是否大于预设阈值;
第一记录子模块,用于若所述第一数据记录表中的行数不大于预设阈值,则将所述第一用户填写的数据记录在所述第一数据记录表中;
所述装置还包括:
第二记录子模块,用于若所述第一数据记录表中的行数大于预设阈值,则生成所述第二数据记录表,并将所述第一数据记录表中记录的数据以及所述第一用户填写的数据记录在所述第二数据记录表中。
15.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第一数据展示请求接收模块,用于当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第一数据记录表,且不存在所述第二数据记录表,则生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表中;向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表;
第二数据展示请求接收模块,用于当接收到所述数据采集端发送的数据展示请求时,若当前存在所述第二数据记录表,则向所述数据采集端发送所述第二数据记录表,以使所述数据采集端显示所述第二数据记录表。
16.根据权利要求12所述的装置,其特征在于,所述数据采集页面包含指定部件;
所述第一数据记录表中的指定行中记录有指定数据的索引值;其中,所述指定数据表示所述指定部件对应的字段的数据;所述指定行用于记录用户填写的指定数据;所述第一数据记录表还包含针对所述指定数据的索引行,所述索引行中记录有所述指定数据的索引值和所述指定数据。
17.根据权利要求16所述的装置,其特征在于,所述第二数据记录表中记录有所述指定数据的索引值;
所述装置还包括:
第二生成模块,用于在生成所述第二数据记录表时,生成所述第二数据记录表对应的第三数据记录表;其中,所述第三数据记录表中记录有所述指定数据的索引值和所述指定数据。
18.一种数据采集装置,其特征在于,所述装置应用于数据采集端,所述装置包括:
页面生成请求获取模块,用于获取登陆所述数据采集端的第二用户输入的页面生成请求;其中,所述页面生成请求中携带有需要生成的数据采集页面中各部件的部件标识;一个部件用于采集一个字段的数据;
信息获取模块,用于从预设的部件库中选择所述各部件标识所表征的部件的属性信息;
第二信息发送模块,用于向服务端发送所述各部件标识所表征的部件的属性信息,以使所述服务端在接收到所述各部件标识所表征的部件的属性信息时,生成所述数据采集页面的访问地址;在接收到数据填写端发送的所述访问地址时,向所述数据填写端发送所述访问地址对应的各部件的属性信息,由所述数据填写端按照所述各部件的属性信息,渲染包含所述各部件的所述数据采集页面,使得登录所述数据填写端的第一用户在所述数据采集页面中填写所述各部件对应的字段的数据,并向所述服务端发送所述第一用户填写的数据。
19.根据权利要求18所述的装置,其特征在于,所述装置还包括:
数据展示请求发送模块,用于向所述服务端发送数据展示请求,以使所述服务端在当前存在第一数据记录表,且不存在第二数据记录表的情况下,生成所述第二数据记录表;将所述第一数据记录表中记录的数据记录在所述第二数据记录表;向所述数据采集端发送所述第二数据记录表,以及在当前存在所述第二数据记录表的情况下,向所述数据采集端发送所述第二数据记录表;
显示模块,用于接收所述服务端发送的所述第二数据记录表,并显示。
20.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7,或8-9任一所述的方法步骤。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7,或8-9任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211660656.7A CN115640475B (zh) | 2022-12-23 | 2022-12-23 | 一种数据采集方法、系统、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211660656.7A CN115640475B (zh) | 2022-12-23 | 2022-12-23 | 一种数据采集方法、系统、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115640475A CN115640475A (zh) | 2023-01-24 |
CN115640475B true CN115640475B (zh) | 2023-03-14 |
Family
ID=84949896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211660656.7A Active CN115640475B (zh) | 2022-12-23 | 2022-12-23 | 一种数据采集方法、系统、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115640475B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836478A (zh) * | 2020-11-09 | 2021-05-25 | 上海德拓信息技术股份有限公司 | 一种零散数据采集应用的方法 |
CN113687852A (zh) * | 2021-09-09 | 2021-11-23 | 中国银行股份有限公司 | 日志采集配置文件自动生成方法及装置 |
CN114036425A (zh) * | 2021-11-24 | 2022-02-11 | 上海哔哩哔哩科技有限公司 | 页面访问方法、客户端、服务端及系统 |
CN114217722A (zh) * | 2021-12-22 | 2022-03-22 | 沈阳东睿科技有限公司 | 一种基于动态绑定的发动机卷宗数据自动采集方法 |
CN114997832A (zh) * | 2022-06-15 | 2022-09-02 | 平安银行股份有限公司 | 金融数据线下采集方法、计算机设备及存储介质 |
-
2022
- 2022-12-23 CN CN202211660656.7A patent/CN115640475B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836478A (zh) * | 2020-11-09 | 2021-05-25 | 上海德拓信息技术股份有限公司 | 一种零散数据采集应用的方法 |
CN113687852A (zh) * | 2021-09-09 | 2021-11-23 | 中国银行股份有限公司 | 日志采集配置文件自动生成方法及装置 |
CN114036425A (zh) * | 2021-11-24 | 2022-02-11 | 上海哔哩哔哩科技有限公司 | 页面访问方法、客户端、服务端及系统 |
CN114217722A (zh) * | 2021-12-22 | 2022-03-22 | 沈阳东睿科技有限公司 | 一种基于动态绑定的发动机卷宗数据自动采集方法 |
CN114997832A (zh) * | 2022-06-15 | 2022-09-02 | 平安银行股份有限公司 | 金融数据线下采集方法、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115640475A (zh) | 2023-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107562620B (zh) | 一种埋点自动设置方法和装置 | |
US8306971B2 (en) | Methods and systems of automatically geocoding a dataset for visual analysis | |
CN111290956B (zh) | 基于脑图的测试方法、装置、电子设备及存储介质 | |
US20060173808A1 (en) | Graphical user interface (GUI) to associate information with an object | |
CA2994831A1 (en) | Building and managing data-processing attributes for modeled data sources | |
CN109740129B (zh) | 基于区块链的报表生成方法、装置、设备及可读存储介质 | |
CN114564930A (zh) | 文档信息整合方法、装置、设备、介质和程序产品 | |
US12002554B2 (en) | Management and tracking solution for specific patient consent attributes and permissions | |
JP2012103759A (ja) | 図書館蔵書検索システム、レコメンド情報提供方法及びプログラム | |
CN113392306B (zh) | 信息交互方法、信息交互装置、终端及存储介质 | |
EP2743882A1 (en) | Unified social graph | |
CN112231317B (zh) | 数据的查询方法、装置、电子装置和存储介质 | |
CN115640475B (zh) | 一种数据采集方法、系统、装置、电子设备及存储介质 | |
CN112818431A (zh) | 一种全过程工程咨询方法及系统 | |
CN113010494A (zh) | 一种数据库审计方法、装置及数据库代理服务器 | |
CN111949845A (zh) | 处理测绘信息的方法、装置、计算机设备和存储介质 | |
CN111488386A (zh) | 数据查询方法和装置 | |
Musto et al. | Improving data quality, privacy and provenance in citizen science applications | |
CN103312584A (zh) | 一种在网络社区中发布信息的方法与设备 | |
CN113157847B (zh) | 森林植物调查数据快速检核方法及装置 | |
CN109582676B (zh) | 电力数据处理方法、装置、计算机设备和存储介质 | |
CN110245208B (zh) | 一种基于大数据存储的检索分析方法、装置及介质 | |
CN109542986B (zh) | 网络数据的要素归一化方法、装置、设备及存储介质 | |
JP6204923B2 (ja) | アセスメント装置、アセスメントシステム、アセスメント方法、及びプログラム | |
Brophy et al. | gpsbound: A command for importing and verifying geographical information from a user-provided shapefile |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |