一种表单数据的处理方法和装置制造方法及图纸

技术编号:39180781 阅读:8 留言:0更新日期:2023-10-27 08:28
本发明专利技术公开了一种表单数据的处理方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:从页面的数据提交请求中解析出页面标识和表单数据;确定所述表单数据的数据标识,然后生成包括所述页面标识和所述数据标识的数据记录;判断本地缓存中是否存在包含所述页面标识和所述数据标识的数据记录;若是,则确定数据库中存在所述表单数据;否则,将所述数据记录存入所述本地缓存,将所述表单数据存入所述数据库。本发明专利技术实施例的方法能够防止表单数据在数据库的重复落库,减轻底层数据库的压力,提升了处理效率。提升了处理效率。提升了处理效率。

【技术实现步骤摘要】
一种表单数据的处理方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种表单数据的处理方法和装置。

技术介绍

[0002]在进行页面数据的提交时,在很多场景下会导致数据存在重复的记录,如恶意使用工具重复提交,新增或修改数据与现有数据库中的数据重复,导致数据被重复提交,增加了服务器和数据库的负载,对业务处理也会造成影响。
[0003]现有技术中防止用户重复提交数据的方法,包括客户端控制和服务端控制,客户端控制通过屏蔽提交按钮或设置提交按钮不可用来防止用户连续提交同一份数据;服务端控制是通过设置有过期时间的分布式锁,防止用户连续提交,或者通过在数据库底层创建联合唯一约束,防止数据重复落库。然而,针对客户端控制,用户通过刷新页面、使用工具请求、绕过前端校验等方式可绕开客户端控制重复提交数据。针对服务端控制的方式,当提交的字段过多,联合唯一约束字段会较多,影响数据库的执行效率;采用服务端的分布式锁处理重复请求的方式,当分布式锁的有效期失效时,无法防止数据重复落库。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供一种表单数据的处理方法和装置,能够防止表单数据在数据库的重复落库,减轻底层数据库的压力,提升了处理效率。
[0005]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种表单数据的处理方法,包括:
[0006]从页面的数据提交请求中解析出页面标识和表单数据;
[0007]确定所述表单数据的数据标识,然后生成包括所述页面标识和所述数据标识的数据记录;
[0008]判断本地缓存中是否存在包含所述页面标识和所述数据标识的数据记录;若是,则确定数据库中存在所述表单数据;否则,将所述数据记录存入所述本地缓存,将所述表单数据存入所述数据库。
[0009]可选地,确定所述表单数据的数据标识,包括:
[0010]获取与所述页面标识对应的页面配置信息,根据所述页面配置信息确定待校验的字段列表;
[0011]从所述表单数据中获取与所述字段列表中每个字段对应的字段数据,得到待校验数据;
[0012]根据所述待校验数据生成所述表单数据的数据标识。
[0013]可选地,所述方法还包括:
[0014]在获取与所述页面标识对应的页面配置信息之前,确定所述数据提交请求对应的方法中包含指示重复数据校验的注解信息;若所述数据提交请求对应的方法中不包含所述注解信息,则将所述表单数据存入数据库;或者,
[0015]在根据所述页面配置信息确定待校验的字段列表之前,确定所述配置信息指示所述页面表单数据不可重复提交;若所述配置信息指示所述页面表数据可重复提交,则将所述表单数据存入数据库。
[0016]可选地,所述数据记录还包括存储标识;
[0017]在将所述表单数据存入数据库之后,还包括:根据所述数据库返回的与所述表单数据对应的存储标识,更新所述本地缓存中与所述表单数据对应的数据记录。
[0018]可选地,所述方法还包括:
[0019]在确定数据库中存在所述表单数据之后,确定所述数据提交请求的操作类型;
[0020]若所述数据提交请求的操作类型是新增操作,则拒绝所述数据提交请求;
[0021]若所述数据提交请求的操作类型是修改操作,则:判断所述本地缓存中是否存在包含所述页面标识和所述数据标识的数据记录,若不存在,则将所述数据记录存入所述本地缓存,并将所述表单数据存入数据库中;若存在,则从所述数据提交请求中解析出待修改数据记录对应的目标存储标识,判断包含所述页面标识和所述数据标识的各条数据记录中是否存在包含所述目标存储标识的数据记录;若是,则将所述表单数据存入所述数据库中,否则拒绝所述数据提交请求;
[0022]若所述数据提交请求的操作类型是删除操作,则从所述数据提交请求中解析出待删除数据记录对应的存储标识和页面标识,删除所述本地缓存中包含所述待删除数据记录对应的存储标识和页面标识的数据记录。
[0023]可选地,所述方法还包括:
[0024]响应于监控到所述数据库中的目标数据被删除,获取所述目标数据对应的存储标识,删除所述本地缓存中包含所述目标数据对应的存储标识的数据记录。
[0025]可选地,所述方法还包括:
[0026]响应于监控到所述数据库中新增目标字段,判断所述目标字段是否为待校验的字段;若是,则将所述待校验字段写入所述字段列表,并根据更新后的字段列表更新所述本地缓存中的数据记录;否则,不更新所述字段列表和所述本地缓存;
[0027]响应于监控到所述数据库中删除目标字段,判断所述目标字段是否为所述字段列表中的字段;若是,则从所述字段列表中删除所述目标字段,并根据更新后的字段列表更新所述本地缓存中的数据记录;否则,不更新所述字段列表和所述本地缓存。
[0028]可选地,从页面的数据提交请求中解析出页面标识和表单数据之后,还包括:
[0029]保存所述表单数据,并向客户端发送指示保存完成的状态标识,以使所述客户端根据所述状态标识重定向到与所述数据提交请求对应的结果页面。
[0030]根据本专利技术实施例的再一个方面,提供了一种表单数据的处理装置,包括:
[0031]解析模块,从页面的数据提交请求中解析出页面标识和表单数据;
[0032]确定模块,确定所述表单数据的数据标识,然后生成包括所述页面标识和所述数据标识的数据记录;
[0033]判断模块,判断本地缓存中是否存在包含所述页面标识和所述数据标识的数据记录;若是,则确定数据库中存在所述表单数据;否则,将所述数据记录存入所述本地缓存,将所述表单数据存入所述数据库。
[0034]根据本专利技术实施例的另一个方面,提供了一种电子设备,包括:
[0035]一个或多个处理器;
[0036]存储装置,用于存储一个或多个程序,
[0037]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术提供的表单数据的处理方法。
[0038]根据本专利技术实施例的还一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术提供的表单数据的处理方法。
[0039]上述专利技术中的一个实施例具有如下优点或有益效果:从页面的数据提交请求中解析出页面标识和表单数据;确定所述表单数据的数据标识,然后生成包括所述页面标识和所述数据标识的数据记录;判断本地缓存中是否存在包含所述页面标识和所述数据标识的数据记录;若是,则确定数据库中存在所述表单数据;否则,将所述数据记录存入所述本地缓存,将所述表单数据存入所述数据库。本专利技术实施例的方法能够防止表单数据在数据库的重复落库,减轻底层数据库的压力,提升了处理效率。
[0040]上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
[0041]附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:
[0042]图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种表单数据的处理方法,其特征在于,包括:从页面的数据提交请求中解析出页面标识和表单数据;确定所述表单数据的数据标识,然后生成包括所述页面标识和所述数据标识的数据记录;判断本地缓存中是否存在包含所述页面标识和所述数据标识的数据记录;若是,则确定数据库中存在所述表单数据;否则,将所述数据记录存入所述本地缓存,将所述表单数据存入所述数据库。2.根据权利要求1所述的方法,其特征在于,确定所述表单数据的数据标识,包括:获取与所述页面标识对应的页面配置信息,根据所述页面配置信息确定待校验的字段列表;从所述表单数据中获取与所述字段列表中每个字段对应的字段数据,得到待校验数据;根据所述待校验数据生成所述表单数据的数据标识。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:在获取与所述页面标识对应的页面配置信息之前,确定所述数据提交请求对应的方法中包含指示重复数据校验的注解信息;若所述数据提交请求对应的方法中不包含所述注解信息,则将所述表单数据存入数据库;或者,在根据所述页面配置信息确定待校验的字段列表之前,确定所述配置信息指示所述页面表单数据不可重复提交;若所述配置信息指示所述页面表数据可重复提交,则将所述表单数据存入数据库。4.根据权利要求1所述的方法,其特征在于,所述数据记录还包括存储标识;在将所述表单数据存入数据库之后,还包括:根据所述数据库返回的与所述表单数据对应的存储标识,更新所述本地缓存中与所述表单数据对应的数据记录。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在确定数据库中存在所述表单数据之后,确定所述数据提交请求的操作类型;若所述数据提交请求的操作类型是新增操作,则拒绝所述数据提交请求;若所述数据提交请求的操作类型是修改操作,则:判断所述本地缓存中是否存在包含所述页面标识和所述数据标识的数据记录,若不存在,则将所述数据记录存入所述本地缓存,并将所述表单数据存入数据库中;若存在,则从所述数据提交请求中解析出待修改数据记录对应的目标存储标识,判断包含所述页面标识和所述数据标识的各条数据记录中是否存在包含所述目标存储标识的数据记录;若是,则将所述表单数据存入所述数据库中,否则拒绝所述数据提交请求;若所述数据提交请求的操作...

【专利技术属性】
技术研发人员:李彬
申请(专利权)人:北京京东拓先科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1