数据校验方法、服务器及存储介质与流程

文档序号:15076547发布日期:2018-08-01 01:52阅读:221来源:国知局

本发明涉及计算机应用技术领域,尤其涉及一种数据校验方法、服务器及计算机可读存储介质。



背景技术:

目前的数据校验过程通常为:预先在服务器上编写针对校验字段数据的校验代码;当服务器接收校验字段数据时,根据该校验字段数据对应的校验代码对该校验字段数据进行校验。然而代码不易进行编写和修改,服务器在根据校验代码对数据进行校验时只能以固定的方式进行校验,而不易根据实际业务需求对数据校验的方式进行修改和调整,数据校验的灵活性差,无法满足实际业务需求。



技术实现要素:

鉴于以上原因,本发明提供一种数据校验方法、服务器及计算机可读存储介质,其主要目的在于提高数据校验的灵活性,方便对数据校验的方式进行修改和调整。

为实现上述目的,本发明提供一种数据校验方法,应用于服务器,该方法包括:

数据模板设置步骤:设置一个或多个数据模板,每个数据模板包括至少一个报表、每个报表包括至少一个校验字段,为每个数据模板分配一个唯一的模板编码,为每个数据模板中的各个报表分配一个唯一的报表名,并为每个报表中的每个校验字段分配一个唯一的字段名;

校验模板设置步骤:为每个数据模板设置对应的校验模板,该校验模板中包括其对应的数据模板的模板编码、各个报表名、各个校验字段的字段名以及对各个校验字段的校验规则;

数据接收步骤:接收用户根据所述数据模板上传的数据;及

数据校验步骤:利用与该数据模板对应的校验模板对接收的数据进行校验。

优选地,所述校验规则包括通用校验规则和定制校验规则,所述通用校验规则包括对数据类型、数据长度、取值范围和非空字段是否为空的校验规则,所述定制校验规则包括对勾稽关系和依赖关系的校验规则。

优选地,在所述数据接收步骤之前,该方法还包括:

数据模板展示步骤:接收用户发出的展示数据模板的请求指令,向用户提供对应的数据模板展示页面;

数据获取步骤:获取用户通过所述数据模板展示页面输入的数据或通过系统对接导入的数据;及

数据上传步骤:将获取的数据上传至服务器。

优选地,所述数据校验步骤包括:

第一校验步骤:利用所述通用校验规则对接收的数据进行初步校验,若初步校验成功,则继续进行第二校验步骤,若初步校验失败,则显示校验失败信息;及

第二校验步骤:利用所述定制校验规则对接收的数据进行二次校验,若二次校验成功,则完成数据校验,若二次校验失败,则显示校验失败信息。

优选地,所述校验模板采用xml文件定义。

本发明还提供一种服务器,该服务器包括存储器和处理器,所述存储器中包括数据校验程序,该数据校验程序被所述处理器执行时实现如下步骤:

数据模板设置步骤:设置一个或多个数据模板,每个数据模板包括至少一个报表、每个报表包括至少一个校验字段,为每个数据模板分配一个唯一的模板编码,为每个数据模板中的各个报表分配一个唯一的报表名,并为每个报表中的每个校验字段分配一个唯一的字段名;

校验模板设置步骤:为每个数据模板设置对应的校验模板,该校验模板中包括其对应的数据模板的模板编码、各个报表名、各个校验字段的字段名以及对各个校验字段的校验规则;

数据接收步骤:接收用户根据所述数据模板上传的数据;及

数据校验步骤:利用与该数据模板对应的校验模板对接收的数据进行校验。

优选地,所述校验规则包括通用校验规则和定制校验规则,所述通用校验规则包括对数据类型、数据长度、取值范围和非空字段是否为空的校验规则,所述定制校验规则包括对勾稽关系和依赖关系的校验规则。

优选地,所述数据接收步骤之前还包括:

数据模板展示步骤:接收用户发出的展示数据模板的请求指令,向用户提供对应的数据模板展示页面;

数据获取步骤:获取用户通过所述数据模板展示页面输入的数据或通过系统对接导入的数据;及

数据上传步骤:将获取的数据上传至服务器。

优选地,所述数据校验步骤包括:

第一校验步骤:利用所述通用校验规则对接收的数据进行初步校验,若初步校验成功,则继续进行第二校验步骤,若初步校验失败,则显示校验失败信息;及

第二校验步骤:利用所述定制校验规则对接收的数据进行二次校验,若二次校验成功,则完成数据校验,若二次校验失败,则显示校验失败信息。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中包括数据校验程序,该数据校验程序被执行时,实现如上所述的数据校验方法中的任意步骤。

本发明提供的数据校验方法、服务器及计算机可读存储介质,通过设置数据模板和对应的校验模板,在接收到数据模板的校验字段数据时,利用对应的校验模板的校验规则对所述校验字段数据进行校验。因为数据模板和校验模板只需要设置一次,之后可以方便地进行更新,所以本发明可以根据实际业务的需求对校验字段和校验规则进行修改和调整,提高数据校验的灵活性,满足实际业务需求。

附图说明

图1为本发明服务器较佳实施例的示意图;

图2为图1中数据校验程序较佳实施例的程序模块图;

图3为本发明数据校验方法较佳实施例的流程图;

图4为本发明数据校验方法中步骤s40的细化流程图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚明白,下面将结合若干附图及实施例,对本发明进行进一步详细说明。应当理解的是,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种服务器。参照图1所示,为本发明服务器1较佳实施例的示意图。在该实施例中,服务器1接收用户根据数据模板上传的数据,利用对应的校验模板对接收的数据进行校验。

所述服务器1可以是机架式服务器、刀片式服务器、塔式服务器以及机柜式服务器中的一种或几种。

所述服务器1包括存储器11、处理器12、网络接口13及通信总线14。

其中,存储器11包括至少一种类型的可读存储介质。所述至少一种类型的可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,所述可读存储介质可以是所述服务器1的内部存储单元,例如该服务器1的硬盘。在另一些实施例中,所述可读存储介质也可以是所述服务器1的外部存储设备,例如所述服务器1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。

在本实施例中,所述存储器11用于存储数据校验程序10、预先设置的数据模板和校验模板等。所述存储器11还可以用于暂时地存储已经输出或者将要输出的数据。

处理器12在一些实施例中可以是一中央处理器(centralprocessingunit,cpu),微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行数据校验程序10等。

网络接口13可以包括标准的有线接口、无线接口(如wi-fi接口)。通常用于在该服务器1与其他电子设备或系统之间建立通信连接。

通信总线14用于实现上述组件之间的连接通信。

图1仅示出了具有组件11-14的服务器1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

可选地,该服务器1还可以包括用户接口,用户接口可以包括输入单元比如键盘(keyboard)、语音输入装置比如麦克风(microphone)等具有语音识别功能的设备、语音输出装置比如音响、耳机等。可选地,用户接口还可以包括标准的有线接口、无线接口。

可选地,该服务器1还可以包括显示器,显示器也可以称为显示屏或显示单元。在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(organiclight-emittingdiode,oled)显示器等。显示器用于显示在服务器1中处理的信息以及用于显示可视化的用户界面。

可选地,该服务器1还包括触摸传感器。所述触摸传感器所提供的供用户进行触摸操作的区域称为触控区域。此外,这里所述的触摸传感器可以为电阻式触摸传感器、电容式触摸传感器等。而且,所述触摸传感器不仅包括接触式的触摸传感器,也可包括接近式的触摸传感器等。此外,所述触摸传感器可以为单个传感器,也可以为例如阵列布置的多个传感器。用户可以通过触摸所述触控区域输入身份识别信息或启动数据校验程序10。

此外,该服务器1的显示器的面积可以与所述触摸传感器的面积相同,也可以不同。可选地,将显示器与所述触摸传感器层叠设置,以形成触摸显示屏。该装置基于触摸显示屏侦测用户触发的触控操作。

该服务器1还可以包括射频(radiofrequency,rf)电路、传感器和音频电路等等,在此不再赘述。

在上述实施例中,处理器12执行存储器11中存储的数据校验程序10时实现如下步骤:

数据模板设置步骤:设置一个或多个数据模板,每个数据模板包括至少一个报表、每个报表包括至少一个校验字段,为每个数据模板分配一个唯一的模板编码,为每个数据模板中的各个报表分配一个唯一的报表名,并为每个报表中的每个校验字段分配一个唯一的字段名;

校验模板设置步骤:为每个数据模板设置对应的校验模板,该校验模板中包括其对应的数据模板的模板编码、各个报表名、各个校验字段的字段名以及对各个校验字段的校验规则;

数据接收步骤:接收用户根据所述数据模板上传的数据;及

数据校验步骤:利用与该数据模板对应的校验模板对接收的数据进行校验。

关于上述步骤的详细介绍,请参照下述图2关于数据校验程序10较佳实施例的程序模块图以及图3关于数据校验方法较佳实施例的流程图的说明。

在其他实施例中,数据校验程序10可以被分割为多个模块,该多个模块被存储在存储器12中,并由处理器13执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。

参照图2所示,为图1中数据校验程序10较佳实施例的程序模块图。

所述数据校验程序10可以被分割为设置模块110、接收模块120以及校验模块130。

设置模块110,用于设置一个或多个数据模板以及与数据模板对应的校验模板。

在一个实施例中,所述设置模块110包括数据模板设置单元111和校验模板设置单元112。

数据模板设置单元111,用于设置数据模板。数据模板设置单元111设置一个或多个数据模板,每个数据模板包括至少一个报表,每个报表包括至少一个校验字段,为每个数据模板分配一个唯一的模板编码,为每个数据模板中的各个报表分配一个唯一的报表名,并为每个报表中的每个校验字段分配一个唯一的字段名。

在本实施例中,采用excel文件定义所述数据模板。在该实施例中,excel文件的工作簿名即为数据模板的模板编码,工作表名即为报表名,各单元格用于填写字段名及校验字段数据。

校验模板设置单元112,用于为所述数据模板设置对应的校验模板。每个校验模板中包括其对应的数据模板的模板编码、各个报表名、各个校验字段的字段名以及对各个校验字段的校验规则。

一般采用xml文件定义所述校验模板。xml格式为w3c的推荐标准,在各种平台的通用性好,可移植性强。xml文件提供树形层次结构,可以将所述校验模板结构化,同时,xml文件还具有高度的可扩展性。

在本实施例中,所述校验规则包括通用校验规则和定制校验规则。所述通用校验规则是指数据校验中普遍使用的规则,比如数据类型校验、数据长度校验、取值范围校验、非空校验等。所述定制校验规则是指未被通用规则覆盖的,具有一定特殊性的校验规则,本发明中的定制校验规则对勾稽关系和依赖关系的校验规则。其中,勾稽关系是指同一数据模板中各个报表之间以及一个报表中各个校验字段之间的内在逻辑对应关系。例如,净资产总额=资产总额-负债总额,如果不相等,则校验失败。

需要说明的是,所述校验规则可根据实际业务需求修改调整,实现过程大致为:服务器1接收对一个校验字段的校验规则进行修改调整的命令;根据该命令,服务器1通过模板编码、报表名和字段名查询到该校验规则;服务器1利用校验模板设置单元112对该校验规则进行修改调整;在后续的业务中,服务器1根据修改调整后的校验规则对校验字段数据进行校验。可以理解的是,在本发明中,数据模板以及包括校验规则的校验模板,都只需要设置一次,之后可以利用数据模板设置单元111和校验模板设置单元112进行增、删、改、查等操作,操作过程类似于上述修改调整校验规则的实现过程,在此不再赘述。

接收模块120,用于接收用户根据数据模板上传的数据。接收模块120接收的数据包括用户向所述校验字段中输入的数据以及通过系统对接,由其他数据系统向所述校验字段中导入的数据。

校验模块130,用于对接收的数据进行校验。接收模块120接收到校验字段数据后,校验模块130在存储器11中查找包括有校验字段数据的字段名的校验模板,利用该校验模板中相应校验字段的校验规则,对接收到的校验字段数据进行校验。

在一个实施例中,所述校验模块130包括第一校验单元131和第二校验单元132。

第一校验单元131,用于对接收的数据进行初步校验。在查找到与接收的数据相匹配的校验模板后,第一校验单元131利用该校验模板中的通用校验规则对接收的数据进行初步校验,若初步校验成功,则第二校验单元132继续对接收的数据进行二次校验,若初步校验失败,则第一校验单元131输出校验失败信息。如设置模块110中所述,通用校验规则包括对数据类型、数据长度、取值范围以及非空字段是否为空等的校验规则,通过第一校验单元131的初步校验,可以识别出接收数据中的非法数据以及部分错误数据,避免后续更复杂的二次校验受非法数据和普通错误数据的影响。例如,假设某个校验字段在校验模板中规定数据类型为int,而接收的该校验字段数据是string,则初步校验失败。如果校验模板中规定某个校验字段是非空字段,而接收的该校验字段数据为空,则初步校验失败。

第二校验单元132,用于对接收的通过初步校验的数据进行二次校验。通过初步校验后,第二校验单元132利用所述定制校验规则对接收的数据进行二次校验,若二次校验成功,则完成数据校验,若二次校验失败,则第二校验单元132输出校验失败信息。如设置模块110中所述,定制校验规则包括对勾稽关系和依赖关系等的校验规则,通过第二校验单元132的校验,可以进一步提高数据校验的准确性。

此外,本发明还提供一种数据校验方法。参照图3所示,为本发明数据校验方法较佳实施例的流程图。服务器1的处理器12执行存储器11中存储的数据校验程序10时实现数据校验方法的如下步骤:

步骤s10,设置模块110设置一个或多个数据模板,每个数据模板包括至少一个报表、每个报表包括至少一个校验字段,为每个数据模板分配一个唯一的模板编码,为每个数据模板中的各个报表分配一个唯一的报表名,并为每个报表中的每个校验字段分配一个唯一的字段名。设置模块110将设置好的数据模板存储在存储器11中,所述数据模板采用excel文件定义,excel文件的工作簿名即为数据模板的模板编码,工作表名即为报表名,各单元格用于填写字段名及校验字段数据。

步骤s20,设置模块110为所述数据模板设置对应的校验模板,该校验模板中包括其对应的数据模板的模板编码、各个报表名、各个校验字段的字段名以及对各个校验字段的校验规则。设置模块110将设置好的校验模板存储在存储器11中,所述校验模板采用xml文件定义,具有高度的可扩展性和多平台通用性。校验模板中包括其对应的数据模板的模板编码、各个报表名和各个校验字段的字段名,用于查询匹配校验模板和对应的数据模板,还包括对每个校验字段的校验规则,用于对接收的数据进行校验。

步骤s30,接收模块120接收用户根据所述数据模板上传的数据。需要说明的是,接收模块120接收的数据包括用户向所述校验字段中输入的数据或通过系统对接,由其他数据系统向所述校验字段中导入的数据。在接收模块120接收数据之前,服务器1接收用户发出的展示数据模板的请求指令,将数据模板展示页面提供给用户,用户根据该数据模板展示页面,向校验字段中填入数据或通过系统对接,由其他数据系统向校验字段中导入数据,然后将获取的数据上传至服务器。

步骤s40,校验模块130利用与所述数据模板对应的校验模板对接收的数据进行校验。接收模块120接收到校验字段数据后,校验模块130在存储器11中查找包括有校验字段数据的字段名的校验模板,利用该校验模板中相应校验字段的校验规则,对接收到的校验字段数据进行校验。

在一个实施例中,步骤s40可分为步骤s41和步骤s42。参照图4所示,为本发明数据校验方法中步骤s40的细化流程图。在本实施例中,所述步骤s40包括:

步骤41:利用所述通用校验规则对接收的数据进行初步校验,若初步校验成功,则继续步骤s42,若初步校验失败,则显示校验失败信息;及

步骤s42:利用所述定制校验规则对接收的数据进行二次校验,若二次校验成功,则完成数据校验,若二次校验失败,则显示校验失败信息。

具体过程请参照上述关于校验模块130的详细介绍,在此不再赘述。

在本实施例中,将数据校验分为步骤s41的初步校验和步骤s42的二次校验,通过初步校验,服务器1可以识别出接收数据中的非法数据以及部分错误数据,避免后续更复杂的二次校验受非法数据和普通错误数据的影响,通过二次校验,可进一步提高数据校验的准确性。将数据校验分成两个步骤,还可以在初步校验失败时,省去二次校验花费的时间,减少无效工作,提高服务器1的工作效率。

本发明提出的数据校验方法,通过设置数据模板和对应的校验模板,在接收到数据模板的校验字段数据时,通过查询对应的校验模板,利用对应的校验模板中的校验规则对校验字段数据进行校验。其中,数据模板和校验模板只需要设置一次,之后可以方便地进行更新,因此,本发明可以根据实际业务需求对校验字段和校验规则进行修改和调整,提高数据校验的灵活性。另外,通过将数据校验分为初步检验和二次校验两个校验过程,可以提高数据校验效率和准确性。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质可以是硬盘、多媒体卡、sd卡、闪存卡、smc、只读存储器(rom)、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、usb存储器等等中的任意一种或者几种的任意组合。所述计算机可读存储介质中包括数据校验程序10,所述数据校验程序10被所述处理器12执行时实现如下操作:

数据模板设置步骤:设置一个或多个数据模板,每个数据模板包括至少一个报表、每个报表包括至少一个校验字段,为每个数据模板分配一个唯一的模板编码,为每个数据模板中的各个报表分配一个唯一的报表名,并为每个报表中的每个校验字段分配一个唯一的字段名;

校验模板设置步骤:为每个数据模板设置对应的校验模板,该校验模板中包括其对应的数据模板的模板编码、各个报表名、各个校验字段的字段名以及对各个校验字段的校验规则;

数据接收步骤:接收用户根据所述数据模板上传的数据;及

数据校验步骤:利用与该数据模板对应的校验模板对接收的数据进行校验。

本发明之计算机可读存储介质的具体实施方式与上述数据校验方法以及服务器1的具体实施方式大致相同,在此不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质中,包括若干指令用以使得服务器执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1