一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种校验方法、装置、电子设备及存储介质与流程

2022-03-09 08:24:21 来源:中国专利 TAG:


1.本技术实施例涉及金融科技(fintech)领域,尤其涉及一种校验方法、装置、电子设备及存储介质。


背景技术:

2.随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。在金融领域中,数据校验是数据处理的前提步骤,决定着所要处理的数据是否合法、有效。数据校验是通过源码确定校验信息,基于校验信息与待校验数据的比对结果,确定待校验数据是否校验通过。
3.相关技术中,在对校验规则进行变更时,需要重新编写源码,并对新的源码进行编译执行得到新的校验信息,即整个编译过程都要重新执行。因此,这种变更方式较为复杂、耗时较长。
4.综上,目前亟需一种校验方法,用以高效、灵活地变更校验规则。


技术实现要素:

5.本技术实施例提供了一种校验方法、装置、电子设备及存储介质,用以高效、灵活地变更校验规则。
6.第一方面,本技术实施例提供了一种校验方法,该方法包括:
7.响应于针对当前校验信息的第一变更指令,确定所述第一变更指令对应的目标元素;其中,所述第一变更指令表征校验变更;
8.针对任一目标元素,基于所述目标元素对应的目标变更方式,在所述当前校验信息中对所述目标元素进行变更,得到新的校验信息;
9.将所述新的校验信息更新至应用程序中,并通过应用程序基于所述新的校验信息进行数据校验。
10.上述方案,通过第一变更指令直接对应用程序可执行的校验信息中的元素进行变更;进而将新的校验信息加载到当前运行的应用程序,应用程序无需对再次编译执行(进行jvm编译并通过类加载器加载)就能得到新的校验信息;进而应用程序可通过新的校验规则对数据进行校验,实现在应用程序运行过程中动态地调整校验规则,从而高效、灵活地变更应用程序中所使用的校验规则。
11.一些可选的实施方式中,若所述目标变更方式表征删除,则在所述当前校验信息中对所述目标元素进行变更,包括:
12.在所述当前校验信息中删除所述目标元素以及所述目标元素的目标属性信息;
13.若所述目标变更方式表征增加,则在所述当前校验信息中对所述目标元素进行变更,包括:
14.在所述当前校验信息中增加所述目标元素以及所述目标元素的目标属性信息;
15.若所述目标变更方式表征修改,则在所述当前校验信息中对所述目标元素进行变更,包括:
16.将所述当前校验信息中所述目标元素的目标属性信息替换为所述第一变更指令中所述目标元素的目标属性信息。
17.上述方案,针对于不同目标变更方式的目标元素,在当前校验信息中采用对应方式对目标元素进行变更,从而实现对目标元素的删除、增加以及修改处理,满足不同场景需求,提高校验规则的灵活性。
18.一些可选的实施方式中,所述方法还包括:
19.响应于针对当前校验信息的第二变更指令,将所述当前校验信息中的提示信息替换为所述第二变更指令中的提示信息;其中,所述第二变更指令表征提示变更。
20.上述方案,通过第二变更指令直接对应用程序可执行的校验信息中的提示进行变更;进而将新的校验信息加载到当前运行的应用程序,应用程序无需对再次编译执行(进行jvm编译并通过类加载器加载)就能得到新的校验信息;进而应用程序在对数据校验不通过后,可采用新的提示方式进行提示。
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为本技术实施例提供的第一种应用场景示意图;
50.图2为本技术实施例提供的第二种应用场景示意图;
51.图3为本技术实施例提供的系统架构图;
52.图4为本技术实施例提供的校验方法的流程示意图;
53.图5为本技术实施例提供的数据校验过程的流程示意图;
54.图6为本技术实施例提供的校验装置的结构示意图;
55.图7为本技术实施例提供的电子设备的结构示意图。
具体实施方式
56.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,显然,所描述的实施例仅仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
57.术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本技术的描述中,除非另有说明,“多个”的含义是两个或两个以上。
58.术语“校验信息”,是对源码编译执行所得到的信息;
59.术语“类”是一群有共同特征的事物或事件的集合,而“类对象”就是类的实例化。可以理解,校验规则是基于类对象进行配置的,因此本实施例中的校验过程均是基于相同类对象进行,后续不再一一说明。
60.在本技术的描述中,需要说明的是,除非另有明确的规定和限定,术语“连接”应做广义理解,例如,可以是直接相连,也可以通过中间媒介间接相连,可以是两个器件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。
61.数据校验是数据处理的前提步骤,决定着所要处理的数据是否合法、有效。数据校验是通过源码确定校验信息,基于校验信息与待校验数据的比对结果,确定待校验数据是否校验通过。只有校验通过的数据才能进行业务逻辑处理;而校验不通过的数据,需要返回提示信息。
62.一些实施例中,在对校验规则进行变更时,需要重新编写源码,并对新的源码进行编译执行得到新的校验信息,即整个编译过程都要重新执行。示例性的,java应用程序将新的源码进行虚拟机(java virtual machine,jvm)编译并通过类加载器加载,才能得到可执行的校验信息。这种变更方式较为复杂、耗时较长。
63.鉴于此,本技术实施例提出一种校验方法、装置、电子设备及存储介质,该方法包括:响应于针对当前校验信息的第一变更指令,确定所述第一变更指令对应的目标元素;其中,所述第一变更指令表征校验变更;针对任一目标元素,基于所述目标元素对应的目标变更方式,在所述当前校验信息中对所述目标元素进行变更,得到新的校验信息;将所述新的校验信息更新至应用程序中,并通过应用程序基于所述新的校验信息进行数据校验。
64.上述方案,通过第一变更指令直接对应用程序可执行的校验信息中的元素进行变更;进而将新的校验信息加载到当前运行的应用程序,应用程序无需对再次编译执行(进行jvm编译并通过类加载器加载)就能得到新的校验信息;进而应用程序可通过新的校验规则对数据进行校验,实现在应用程序运行过程中动态地调整校验规则,从而高效、灵活地变更应用程序中所使用的校验规则。
65.本技术实施例对上述源码的编写过程不做具体限定,例如:
66.参阅图1所示,可通过在应用程序的各层程序代码中编写源码(包含校验代码),然而在不同层中会有大量重复代码,代码编写过程容易发生错误;
67.参阅图2所示,为了避免大量重复代码,可将校验代码编写在领域模型中,然而校验代码会与领域代码混合;上述领域模型是对领域内的类对象的可视化表示,领域模型专注于分析问题领域本身,发掘重要的业务领域概念,并建立业务领域概念之间的关系。
68.通过在元数据模型中编写校验代码,使得业务代码与校验代码解耦,减少了上述代码重复以及代码混合的问题,降低业务代码出错率。元数据模型通过java注解(annotation)来描述的,也可以使用可扩展标记语言(extensible markup language,xml)来重载或者扩展。
69.参阅图3所示,为本技术实施例提供的一种系统架构,包括:外接设备100以及电子设备200;其中电子设备200包括数据库201。
70.上述第一变更指令可通过外接设备100触发;
71.电子设备200在得到新的校验信息后,可将其存储到数据库201中;并将新的校验信息更新至应用程序中。
72.本实施例对上述外接设备100以及数据库201的具体实现方式不做限定,例如:外接设备100为远程字典服务(remote dictionary server,redis),或者用户设备等用于缓存数据的设备;数据库201为关系型数据库管理系统(mysql)等用于持久化数据的设备。
73.下面将结合附图及具体实施例,对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
74.本技术实施例提供一种校验方法,应用于上述电子设备,如图4所示,包括以下步骤:
75.步骤s401:响应于针对当前校验信息的第一变更指令,确定所述第一变更指令对应的目标元素。
76.其中,所述第一变更指令表征校验变更。
77.实施中,初始校验信息是对源码进行jvm编译并通过类加载器加载后得到的。源码编码的方式可参照上述实施例,此处不再赘述。
78.本实施例对校验代码(注解信息、提示信息等)在源码中的配置方式不做具体限定,示例性的,在程序开发初期需要对代码层级进行抽象和定义;随后在代码中编写每个层级对外提供的应用程序接口(application programming interface,api)及其类对象,将校验代码标注到对应的类对象的源码中;java编译成class文件的时候会将注解信息写入元素的属性表。在jvm运行时会将一个类中所有的生命周期时run的注解属性取出,并放置到一个java map元素中,jvm会创建一个注解处理实例,将存储注解属性的map传递给这个
实例,然后使用动态代理方式生成注解代理类,并进行初始化。
79.参阅表1所示的属性表,当前校验信息包括多个元素,以及各元素对应的目标属性信息。上述第一变更指令对应的目标元素包括当前校验信息中的元素,和/或新的元素。
80.表1
81.元素1目标属性信息1元素2目标属性信息2元素3目标属性信息3元素4目标属性信息4元素5目标属性信息5元素6目标属性信息6元素7目标属性信息7元素8目标属性信息8
82.上述表1是当前校验信息中元素的示例性说明,本实施例对此不做具体限定。
83.步骤s402:针对任一目标元素,基于所述目标元素对应的目标变更方式,在所述当前校验信息中对所述目标元素进行变更,得到新的校验信息。
84.如上所述,上述第一变更指令对应的目标元素包括当前校验信息中的元素,和/或新的元素。针对于目标元素,需要变更这些目标元素,和/或对应的目标属性信息。
85.步骤s403:将所述新的校验信息更新至应用程序中,并通过应用程序基于所述新的校验信息进行数据校验。
86.实施中,在得到新的校验信息后,还需要将新的校验信息加载到应用程序中,应用程序才能通过新的校验规则对数据进行校验。由于jvm编译过程和类加载器加载过程较为复杂,且本实施例已经直接对校验信息进行了变更,因此可在应用程序中加载新的校验信息。
87.上述方案,通过第一变更指令直接对应用程序可执行的校验信息中的元素进行变更;进而将新的校验信息加载到当前运行的应用程序,应用程序无需对再次编译执行(进行jvm编译并通过类加载器加载)就能得到新的校验信息;进而应用程序可通过新的校验规则对数据进行校验,实现在应用程序运行过程中动态地调整校验规则,从而高效、灵活地变更应用程序中所使用的校验规则。
88.一些可选的实施方式中,上述步骤s402可通过但不限于如下方式实现:
89.1)若所述目标变更方式表征删除,在所述当前校验信息中删除所述目标元素以及所述目标元素的目标属性信息;
90.2)若所述目标变更方式表征增加,在所述当前校验信息中增加所述目标元素以及所述目标元素的目标属性信息;
91.3)若所述目标变更方式表征修改,将所述当前校验信息中所述目标元素的目标属性信息替换为所述第一变更指令中所述目标元素的目标属性信息。
92.还是以上述表1为例,目标元素包括上述元素1、元素4以及新的元素9;其中,元素1的目标变更方式表征删除,删除表1中的元素1以及目标属性信息1;元素4的目标变更方式表征修改,第一变更指令中元素4的目标属性信息为目标属性信息4

,将表1中目标属性信息4替换为目标属性信息4

;元素9目标变更方式表征增加,第一变更指令中元素9的目标属
性信息为目标属性信息9,在表1中增加元素9以及目标属性信息9;新的校验信息如表2所示:
93.表2
[0094][0095][0096]
上述变更过程以及新的校验信息只是示例性说明,本实施例对变更过程以及新的校验信息不做具体限定。
[0097]
上述方案,针对于不同目标变更方式的目标元素,在当前校验信息中采用对应方式对目标元素进行变更,从而实现对目标元素的删除、增加以及修改处理,满足不同场景需求。
[0098]
一些可选的实施方式中,上述步骤s403可通过但不限于如下方式实现:
[0099]
生成所述新的校验信息的代理类;
[0100]
将所述新的校验信息的代理类替换所述应用程序中当前校验信息的代理类。
[0101]
示例性的,通过在应用程序运行过程中开启守护线程,实时读取是否得到新的校验数据(如上述图3所示,通过读取数据库,确定是否得到新的校验数据);在确定得到新的校验数据后,aop切面通过jvm生成应用程序可识别的新的校验信息的代理类,将新的校验信息替换该应用程序中当前校验信息的代理类。
[0102]
上述aop切面,是通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术;通过aop切面可直接修改java应用程序中编译执行后的实例。
[0103]
如上所述,校验信息中还包括提示信息,基于此,在上述实施例的基础上,还可包括以下步骤:
[0104]
响应于针对当前校验信息的第二变更指令,将所述当前校验信息中的提示信息替换为所述第二变更指令中的提示信息;其中,所述第二变更指令表征提示变更。
[0105]
上述方案,通过第二变更指令直接对应用程序可执行的校验信息中的提示进行变更;进而将新的校验信息加载到当前运行的应用程序,应用程序无需对再次编译执行(进行jvm编译并通过类加载器加载)就能得到新的校验信息;进而应用程序在对数据校验不通过后,可采用新的提示方式进行提示。
[0106]
参阅图5所示,通过应用程序基于新的校验信息进行数据校验,可通过但不限于如下方式实现:
[0107]
步骤s501:在收到待校验数据后,确定所述待校验数据中各元素的实际属性值。
[0108]
实施中,在收到待校验数据后,需要对其各元素进行校验,基于此,先确定各元素的实际属性值。
[0109]
步骤s502:针对任一元素,将所述待校验数据中所述元素的实际属性值与所述新的校验信息中所述元素的目标属性信息进行比对。
[0110]
如上所述,新的校验信息中有各元素的目标属性信息,通过将各元素的实际属性值与该元素的目标属性信息进行比对,实现对该元素的校验。
[0111]
步骤s503:基于比对结果,对所述元素进行校验。
[0112]
一些可选的实现方式中,若所述元素对应的校验方式表征非模糊校验,则所述目标属性信息包括目标属性值或者目标属性范围,上述步骤s502可通过但不限于如下方式实现:
[0113]
确定所述元素的实际属性值是否属于对应的目标属性范围,或者确定所述元素的实际属性值是否为对应的任一目标属性值;
[0114]
上述步骤s503可通过但不限于如下方式实现:
[0115]
若所述元素的实际属性值属于对应的目标属性范围,或者为对应的任一目标属性值,则对所述元素校验通过。
[0116]
本实施例,如果某一元素的校验方式表征非模糊校验,只有实际属性值与对应的目标属性信息严格匹配时,才对该元素校验通过。
[0117]
示例性的,针对于非模糊校验,目标属性值可以为一个或多个目标属性值,如等于某个数值,特定格式要求等;目标属性值也可以为一个或多个目标属性范围,如小于某个数值,大于某个数值,不等于某个数值,在某个范围等。如果元素的目标属性信息为目标属性范围,确定该元素的实际属性值是否属于上述目标属性范围,如果属于就对该元素校验通过;否则对该元素校验不通过。如果元素的目标属性信息为一个目标属性值,确定该元素的实际属性值是否为该目标属性值,如果为该目标属性值就对该元素校验通过;否则对该元素校验不通过。如果元素的目标属性信息为多个目标属性值,确定该元素的实际属性值是否为其中一个目标属性值,如果为其中一个目标属性值就对该元素校验通过;否则对该元素校验不通过。
[0118]
上述非模糊校验过程只是示例性说明,本实施例对此不做具体限定。
[0119]
上述方案,针对于非模糊校验的元素,通过严格确定元素的实际属性值是否属于对应的目标属性范围,或者确定元素的实际属性值是否为对应的任一目标属性值;从而确定实际属性值是否与对应的目标属性信息严格匹配,满足非模糊校验的需求。
[0120]
一些可选的实现方式中,若所述元素对应的校验方式表征模糊校验,则所述目标属性信息包括目标属性值,上述步骤s502可通过但不限于如下方式实现:
[0121]
确定所述元素的实际属性值与对应的各目标候选属性值之间的第一相似度;其中,所述目标候选属性值包括部分或全部候选属性值,所述候选属性值包括所述目标属性值;
[0122]
上述步骤s503可通过但不限于如下方式实现:
[0123]
若有第一相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;或者,若全部第一相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;或者,若基于多个第一相似度确定的目标相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;其中,所述第二相似度是基于所述候选属性值之间的相似度确定的。
[0124]
如果某一元素的校验方式表征模糊校验,只要实际属性值与对应的目标属性值在合理偏差范围内近似匹配时,就可对该元素校验通过。例如:目标属性信息为a小区,而实际属性值为a小区b号楼,虽然实际属性值与目标属性值不同,但该实际属性值是一个更为详细的地址,与目标属性值并无本质区别,需要对该实际属性值校验通过,该场景下就可为该元素设置表征模糊校验的校验方式。
[0125]
示例性的,基于某一元素的每两个候选属性值之间的相似度,确定上述第二相似度;根据实际应用场景,将部分或全部候选属性值确定为目标候选属性值;分别确定该元素的实际属性值与各目标候选属性值之间的第一相似度;
[0126]
一些实施例中,只要有一个第一相似度相对于第二相似度的偏差不大于预设偏差,就对该元素校验通过;一些实施例中,需要所有第一相似度相对于第二相似度的偏差不大于预设偏差,才对该元素校验通过;还有一些实施例中,需要先基于第一相似度确定目标相似度(如多个第一相似度的平均值或中位数等)相对于第二相似度的偏差不大于预设偏差,就对该元素校验通过。
[0127]
本实施例对计算两个属性值之间的相似度的具体实现方式不做限定,例如:
[0128]
1)将属性值进行向量化,得到属性向量;基于两个属性向量之间的距离确定两个属性值之间的相似度;
[0129]
2)将属性值进行分词处理,确定各分词在属性值中的权重;基于两个属性值中对应分词的权重,确定两个属性值之间的相似度。即属性值e1、e2之间的相似度其中,w
1i
为e1中第i段分词的权重,w
2i
为e2中第i段分词的权重。
[0130]
上述两种确定属性值之间相似度的方式只是示例性说明,本实施例对此不做限定。
[0131]
上述方案,针对于模糊校验的元素,通过确定该元素的实际属性值与对应的各目标候选属性值之间的第一相似度;基于第一相似度相对于第二相似度之间的偏差,确定实际属性值是否与对应的目标属性信息近似匹配,满足模糊校验的需求。
[0132]
一些可选的实施方式中,上述候选属性值除了目标属性值之外,还包括校验通过的元素的实际属性值;也就是说随着校验过程的进行,该元素会有越来越多的实际属性值校验通过,如果有过多的目标候选属性值,计算第一相似度的过程会耗时较长;
[0133]
基于此,若所述候选属性值的数量超过预设数量,则目标候选属性值包括预设数量的候选属性值;若所述候选属性值的数量不超过预设数量,则目标候选属性值包括全部候选属性值。
[0134]
本实施例对候选属性值的数量超过预设数量时,选择目标候选属性值的具体实现
方式不做限定,例如:
[0135]
1)随机选择预设数量的候选属性值作为目标候选属性值。
[0136]
由于随机选择候选属性值不会消耗太长时间,因此,通过这种方式可以高效地选择出目标候选属性值。
[0137]
2)按照校验通过的时间,选择最晚校验通过的预设数量的候选属性值作为目标候选属性值。
[0138]
由于有些元素的期望的信息会随着时间的推移发生变化,如街道名称等,因此,校验通过越晚的实际属性值越能反映出真实期望,通过这种方式可以更加合理地选择出目标候选属性值。
[0139]
上述方案,通过将校验通过的元素的实际属性值也确定为候选属性值,丰富了更加符合真实期望的候选属性值;另外,通过在候选属性值的数量超过预设数量时,选择预设数量的候选属性值作为目标候选属性值,使得目标候选属性值不会过多,提高计算第一相似度的效率;如果候选属性值的数量不超过预设数量,将全部候选属性值作为目标候选属性值,使得目标候选属性值较为丰富。
[0140]
下面以一个具体的示例进行说明:
[0141]
元素5中的目标属性信息5包括目标属性值51、目标属性值52以及目标属性值53;另外元素5有实际属性值5a以及实际属性值5c校验通过;候选属性值有目标属性值51、目标属性值52、目标属性值53、实际属性值5a以及实际属性值5c;这5个候选属性值对应的第二相似度记作s2;
[0142]
预设数量为3个,将上述目标属性值53、实际属性值5a以及实际属性值5c这3个候选属性值作为目标候选属性值;
[0143]
待校验数据中元素5的实际属性值为实际属性值5d,分别确定实际属性值5d与目标属性值53之间的第一相似度s11,实际属性值5d与目标属性值5a之间的第一相似度s12,实际属性值5d与目标属性值5c之间的第一相似度s13;
[0144]
预设偏差记作q,如果|s11-s2|、|s12-s2|以及|s13-s2|中有任一项不大于q,则对待校验数据中元素5校验通过;
[0145]
或者,如果|s11-s2|、|s12-s2|以及|s13-s2|均不大于q,则对待校验数据中元素5校验通过;
[0146]
或者,将s11、s12以及s13的平均值或中位数确定为目标相似度s0,如果|s0-s2|不大于q,则对待校验数据中元素5校验通过。
[0147]
上述示例只是为了更加清楚地说明如何进行模糊校验,而不作为对本技术的限定。
[0148]
基于相同的发明构思,本技术实施例提供一种校验装置,参阅图6所示,校验装置600包括:
[0149]
确定模块601,用于响应于针对当前校验信息的第一变更指令,确定所述第一变更指令对应的目标元素;其中,所述第一变更指令表征校验变更;
[0150]
变更模块602,用于针对任一目标元素,基于所述目标元素对应的目标变更方式,在所述当前校验信息中对所述目标元素进行变更,得到新的校验信息;
[0151]
校验模块603,用于将所述新的校验信息更新至应用程序中,并通过应用程序基于
所述新的校验信息进行数据校验。
[0152]
一些可选的实施方式中,变更模块602具体用于:
[0153]
若所述目标变更方式表征删除,则在所述当前校验信息中删除所述目标元素以及所述目标元素的目标属性信息;
[0154]
若所述目标变更方式表征增加,则在所述当前校验信息中增加所述目标元素以及所述目标元素的目标属性信息;
[0155]
若所述目标变更方式表征修改,则将所述当前校验信息中所述目标元素的目标属性信息替换为所述第一变更指令中所述目标元素的目标属性信息。
[0156]
一些可选的实施方式中,变更模块602还用于:
[0157]
响应于针对当前校验信息的第二变更指令,将所述当前校验信息中的提示信息替换为所述第二变更指令中的提示信息;其中,所述第二变更指令表征提示变更。
[0158]
一些可选的实施方式中,校验模块603具体用于:
[0159]
在收到待校验数据后,确定所述待校验数据中各元素的实际属性值;
[0160]
针对任一元素,将所述待校验数据中所述元素的实际属性值与所述新的校验信息中所述元素的目标属性信息进行比对;
[0161]
基于比对结果,对所述元素进行校验。
[0162]
一些可选的实施方式中,若所述元素对应的校验方式表征非模糊校验,则所述目标属性信息包括目标属性值或者目标属性范围,校验模块603具体用于:
[0163]
确定所述元素的实际属性值是否属于对应的目标属性范围,或者确定所述元素的实际属性值是否为对应的任一目标属性值;
[0164]
若所述元素的实际属性值属于对应的目标属性范围,或者为对应的任一目标属性值,则对所述元素校验通过。
[0165]
一些可选的实施方式中,若所述元素对应的校验方式表征模糊校验,则所述目标属性信息包括目标属性值,校验模块603具体用于:
[0166]
确定所述元素的实际属性值与对应的各目标候选属性值之间的第一相似度;其中,所述目标候选属性值包括部分或全部候选属性值,所述候选属性值包括所述目标属性值;
[0167]
若有第一相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;或者,若全部第一相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;或者,若基于多个第一相似度确定的目标相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;其中,所述第二相似度是基于所述候选属性值之间的相似度确定的。
[0168]
一些可选的实施方式中,所述候选属性值还包括校验通过的元素的实际属性值;
[0169]
若所述候选属性值的数量超过预设数量,则目标候选属性值包括预设数量的候选属性值;若所述候选属性值的数量不超过预设数量,则目标候选属性值包括全部候选属性值。
[0170]
一些可选的实施方式中,校验模块603具体用于:
[0171]
生成所述新的校验信息的代理类;
[0172]
将所述新的校验信息的代理类替换所述应用程序中当前校验信息的代理类。
[0173]
由于该装置即是本技术实施例中的方法中的装置,并且该装置解决问题的原理与该方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
[0174]
基于相同的技术构思,本技术实施例还提供了一种电子设备700,如图7所示,包括至少一个处理器701,以及与至少一个处理器连接的存储器702,本技术实施例中不限定处理器701与存储器702之间的具体连接介质,图7中处理器701和存储器702之间通过总线703连接为例。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0175]
其中,处理器701是电子设备的控制中心,可以利用各种接口和线路连接电子设备的各个部分,通过运行或执行存储在存储器702内的指令以及调用存储在存储器702内的数据,从而实现数据处理。可选的,处理器701可包括一个或多个处理单元,处理器701可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理下发指令。可以理解的是,上述调制解调处理器也可以不集成到处理器701中。在一些实施例中,处理器701和存储器702可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
[0176]
处理器701可以是通用处理器,例如中央处理器(cpu)、数字信号处理器、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合校验方法实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0177]
存储器702作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器702可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性存储器、磁盘、光盘等等。存储器702是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器702还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0178]
在本技术实施例中,存储器702存储有计算机程序,当该程序被处理器701执行时,使得处理器701执行:
[0179]
响应于针对当前校验信息的第一变更指令,确定所述第一变更指令对应的目标元素;其中,所述第一变更指令表征校验变更;
[0180]
针对任一目标元素,基于所述目标元素对应的目标变更方式,在所述当前校验信息中对所述目标元素进行变更,得到新的校验信息;
[0181]
将所述新的校验信息更新至应用程序中,并通过应用程序基于所述新的校验信息进行数据校验。
[0182]
一些可选的实施方式中,处理器701具体执行:
[0183]
若所述目标变更方式表征删除,则在所述当前校验信息中删除所述目标元素以及所述目标元素的目标属性信息;
[0184]
若所述目标变更方式表征增加,则在所述当前校验信息中增加所述目标元素以及所述目标元素的目标属性信息;
[0185]
若所述目标变更方式表征修改,则将所述当前校验信息中所述目标元素的目标属性信息替换为所述第一变更指令中所述目标元素的目标属性信息。
[0186]
一些可选的实施方式中,处理器701还执行:
[0187]
响应于针对当前校验信息的第二变更指令,将所述当前校验信息中的提示信息替换为所述第二变更指令中的提示信息;其中,所述第二变更指令表征提示变更。
[0188]
一些可选的实施方式中,处理器701具体执行:
[0189]
在收到待校验数据后,确定所述待校验数据中各元素的实际属性值;
[0190]
针对任一元素,将所述待校验数据中所述元素的实际属性值与所述新的校验信息中所述元素的目标属性信息进行比对;
[0191]
基于比对结果,对所述元素进行校验。
[0192]
一些可选的实施方式中,若所述元素对应的校验方式表征非模糊校验,则所述目标属性信息包括目标属性值或者目标属性范围,处理器701具体执行:
[0193]
确定所述元素的实际属性值是否属于对应的目标属性范围,或者确定所述元素的实际属性值是否为对应的任一目标属性值;
[0194]
若所述元素的实际属性值属于对应的目标属性范围,或者为对应的任一目标属性值,则对所述元素校验通过。
[0195]
一些可选的实施方式中,若所述元素对应的校验方式表征模糊校验,则所述目标属性信息包括目标属性值,处理器701具体执行:
[0196]
确定所述元素的实际属性值与对应的各目标候选属性值之间的第一相似度;其中,所述目标候选属性值包括部分或全部候选属性值,所述候选属性值包括所述目标属性值;
[0197]
若有第一相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;或者,若全部第一相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;或者,若基于多个第一相似度确定的目标相似度相对于第二相似度的偏差不大于预设偏差,则对所述元素校验通过;其中,所述第二相似度是基于所述候选属性值之间的相似度确定的。
[0198]
一些可选的实施方式中,所述候选属性值还包括校验通过的元素的实际属性值;
[0199]
若所述候选属性值的数量超过预设数量,则目标候选属性值包括预设数量的候选属性值;若所述候选属性值的数量不超过预设数量,则目标候选属性值包括全部候选属性值。
[0200]
一些可选的实施方式中,处理器701具体执行:
[0201]
生成所述新的校验信息的代理类;
[0202]
将所述新的校验信息的代理类替换所述应用程序中当前校验信息的代理类。
[0203]
由于该电子设备即是本技术实施例中的方法中的电子设备,并且该电子设备解决问题的原理与该方法相似,因此该电子设备的实施可以参见方法的实施,重复之处不再赘
述。
[0204]
基于相同的技术构思,本技术实施例还提供了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行上述校验方法的步骤。
[0205]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0206]
本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0207]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0208]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0209]
尽管已描述了本技术的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术范围的所有变更和修改。
[0210]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献