针对数据变更的记录方法、装置、电子设备及存储介质制造方法及图纸

技术编号:35644023 阅读:9 留言:0更新日期:2022-11-19 16:36
本发明专利技术实施例提供了一种针对数据变更的记录方法、装置、电子设备及存储介质,涉及数据库技术领域。该方法包括:接收到数据变更请求时,触发指定前置操作执行,得到第一执行结果;指定前置操作对目标代码进行指定添加处理,且获取待操作数据对象以及操作类型;目标代码为实现对请求进行响应的程序代码;指定添加处理为添加AOP注解或添加监听事件代码;请求响应后,若通过过滤器拦截到请求对应反馈结果,触发指定后置操作执行,得到第二执行结果;指定后置操作用于获取数据对象以及操作类型;对比执行结果得到差异结果;存储数据变更的记录信息。应用本发明专利技术实施例提供的方案,可以在记录数据库中数据的变更时,减少对业务代码的侵入修改。修改。修改。

【技术实现步骤摘要】
针对数据变更的记录方法、装置、电子设备及存储介质


[0001]本专利技术实施例涉及数据库
,特别是涉及针对数据变更的记录方法、装置、电子设备及存储介质。

技术介绍

[0002]众所周知,金融、电信、制造和互联网等行业有大量的数据需要处理,为了更好地处理数据,相关人员会应用数据库技术来管理相关行业的数据,特别地,针对不同行业,相关人员会开发与行业相适应的数据库。在数据库中,数据有其生命周期,在数据的生命周期中,数据被创建、存储、维护、使用以及销毁。由于数据库中的数据发生变更,对于利用该数据库的业务的生命周期变化和问题回溯有很重要的作用,因此,存在对数据库中的变更内容进行记录的需求。
[0003]相关技术中,为了实现针对数据库的数据变更的记录,通常在对数据库中的数据进行变更的同时,打印日志记录或者在数据库中创建变更记录表。不管是打印日志记录还是创建变更记录表,都是需要将实现记录变更内容功能的逻辑代码嵌入到响应数据变更请求的程序代码中,也就是,嵌入到用于实现数据变更的业务代码中,从而在执行数据变更流程的同时来记录数据的变更。
[0004]然而,在实际应用中,实现记录数据变更的逻辑代码需要根据不同的数据表结构来编写,并且逻辑代码总是与响应数据变更请求的业务代码交叉在一起。因此,相关技术在实现记录数据变更时,会对业务代码有大量的侵入修改,这样,对后续代码重构和代码理解都会带来干扰。
[0005]可见,在记录数据库中数据的变更时,如何减少对业务代码的侵入修改,是一个亟待解决的问题。
专利技术内容
[0006]本专利技术实施例的目的在于提供针对数据变更的记录方法、装置、电子设备及存储介质,以实现在记录数据库中数据的变更时,减少对业务代码的侵入修改。
[0007]具体技术方案如下:
[0008]第一方面,为了达到上述目的,本专利技术实施例公开了一种针对数据变更的记录方法,所述方法包括:
[0009]当接收到针对目标数据库的数据变更请求时,触发指定前置操作的执行,得到第一执行结果;其中,所述指定前置操作为通过对目标代码进行指定添加处理以实现触发的、针对所述数据变更请求的响应的前置操作,且用于获取所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型;所述目标代码为实现对所述数据变更请求进行响应的程序代码;所述指定添加处理为添加面向切面编程AOP注解或添加监听事件代码;
[0010]在针对所述目标数据库进行所述数据变更请求的响应后,若通过预设过滤器拦截
到所述数据变更请求对应的反馈结果,则触发指定后置操作的执行,得到第二执行结果;其中,所述指定后置操作用于获取在响应所述数据变更请求时所进行变更的数据对象以及所述数据变更请求对应的操作类型;
[0011]对比所述第一执行结果和所述第二执行结果,得到差异结果;
[0012]存储关于所述差异结果所表征的数据变更的记录信息。
[0013]可选的,所述第一执行结果为被封装为预先设定的数据结构的第一数据内容;所述第一数据内容包括所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型;
[0014]所述第二执行结果为被封装为预先设定的数据结构的第二数据内容;其中,第二数据内容包括在响应所述数据变更请求时所进行变更的数据对象以及所述数据变更请求对应的操作类型。
[0015]可选的,其特征在于,所述触发指定前置操作的执行,得到第一执行结果之后,所述方法还包括:
[0016]在得到第一执行结果后,将所述第一执行结果存储至所述数据变更请求对应的指定内存区域;
[0017]所述若通过预设过滤器拦截到所述数据变更请求对应的反馈结果,则触发指定后置操作的执行,得到第二执行结果之前,还包括:
[0018]在所述指定内存区域为非空的情况下,通过预设过滤器拦截所述数据变更请求对应的反馈结果;
[0019]所述对比所述第一执行结果和所述第二执行结果,得到差异结果,包括:从所述指定内存区域获取所述第一执行结果,对比所述第一执行结果和所述第二执行结果,得到差异结果。
[0020]可选的,其特征在于,所述指定前置操作的执行过程,包括:
[0021]识别所述数据变更请求的类型;
[0022]若所述数据变更请求为修改类型或删除类型的请求,则基于所述数据变更请求所携带的参数信息,从所述目标数据库中读取所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型,得到第一执行结果;
[0023]若所述数据变更请求为增加类型的请求,则确定用于表征数据对象为空的内容以及所述数据变更请求对应的操作类型,得到第一执行结果。
[0024]可选的,其特征在于,所述指定后置操作的执行过程,包括:
[0025]识别所述数据变更请求的类型;
[0026]若所述数据变更请求为修改类型或增加类型的请求,则基于所述数据变更请求所携带的参数信息,从所述目标数据库中读取在响应所述数据变更请求时所进行变更的数据对象以及所述数据变更请求对应的操作类型,得到第二执行结果;
[0027]若所述数据变更请求为删除类型的请求,则确定用于表征数据对象为空的内容以及所述数据变更请求对应的操作类型,得到第二执行结果。
[0028]第二方面,为了达到上述目的,本专利技术实施例公开了一种针对数据变更的记录装置,所述装置包括:
[0029]第一触发模块,用于当接收到针对目标数据库的数据变更请求时,触发指定前置
操作的执行,得到第一执行结果;其中,所述指定前置操作为通过对目标代码进行指定添加处理以实现触发的、针对所述数据变更请求的响应的前置操作,且用于获取所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型;所述目标代码为实现对所述数据变更请求进行响应的程序代码;所述指定添加处理为添加面向切面编程AOP注解或添加监听事件代码;
[0030]第二触发模块,用于在针对所述目标数据库进行所述数据变更请求的响应后,若通过预设过滤器拦截到所述数据变更请求对应的反馈结果,则触发指定后置操作的执行,得到第二执行结果;其中,所述指定后置操作用于获取在响应所述数据变更请求时所进行变更的数据对象以及所述数据变更请求对应的操作类型;
[0031]对比模块,用于对比所述第一执行结果和所述第二执行结果,得到差异结果;
[0032]存储模块,用于存储关于所述差异结果所表征的数据变更的记录信息。
[0033]可选的,所述第一执行结果为被封装为预先设定的数据结构的第一数据内容;所述第一数据内容包括所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型;
[0034]所述第二执行结果为被封装为预先设定的数据结构的第二数据内容;其中,第二数据内容包括在响应所述数据变更请求时所进行变更的数据对象以及所述数据变更请求对应的操作类型。
[0035]可选的,所述第一触发模块,还用于在触发指定前置操作的执行,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种针对数据变更的记录方法,其特征在于,所述方法包括:当接收到针对目标数据库的数据变更请求时,触发指定前置操作的执行,得到第一执行结果;其中,所述指定前置操作为通过对目标代码进行指定添加处理以实现触发的、针对所述数据变更请求的响应的前置操作,且用于获取所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型;所述目标代码为实现对所述数据变更请求进行响应的程序代码;所述指定添加处理为添加面向切面编程AOP注解或添加监听事件代码;在针对所述目标数据库进行所述数据变更请求的响应后,若通过预设过滤器拦截到所述数据变更请求对应的反馈结果,则触发指定后置操作的执行,得到第二执行结果;其中,所述指定后置操作用于获取在响应所述数据变更请求时所进行变更的数据对象以及所述数据变更请求对应的操作类型;对比所述第一执行结果和所述第二执行结果,得到差异结果;存储关于所述差异结果所表征的数据变更的记录信息。2.根据权利要求1所述的方法,其特征在于,所述第一执行结果为被封装为预先设定的数据结构的第一数据内容;所述第一数据内容包括所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型;所述第二执行结果为被封装为预先设定的数据结构的第二数据内容;其中,第二数据内容包括在响应所述数据变更请求时所进行变更的数据对象以及所述数据变更请求对应的操作类型。3.根据权利要求1所述的方法,其特征在于,所述触发指定前置操作的执行,得到第一执行结果之后,所述方法还包括:在得到第一执行结果后,将所述第一执行结果存储至所述数据变更请求对应的指定内存区域;所述若通过预设过滤器拦截到所述数据变更请求对应的反馈结果,则触发指定后置操作的执行,得到第二执行结果之前,还包括:在所述指定内存区域为非空的情况下,通过预设过滤器拦截所述数据变更请求对应的反馈结果;所述对比所述第一执行结果和所述第二执行结果,得到差异结果,包括:从所述指定内存区域获取所述第一执行结果,对比所述第一执行结果和所述第二执行结果,得到差异结果。4.根据权利要求1

3任一项所述的方法,其特征在于,所述指定前置操作的执行过程,包括:识别所述数据变更请求的类型;若所述数据变更请求为修改类型或删除类型的请求,则基于所述数据变更请求所携带的参数信息,从所述目标数据库中读取所述数据变更请求所表征的待操作数据对象以及所述数据变更请求对应的操作类型,得到第一执行结果;若所述数据变更请求为增加类型的请求,则确定用于表征数据对象为空的内容以及所述数据变更请求对应的操作类型,得到第一执行结果。5.根据权利要求1

3任一项所述的方法,其特征在于,所述指定后置操作的执行过程,包括:
识别所述数据变更请求的类型;若所述数据变更请求为修改类型或增加类型的请求,则基于所述数据变更请求所携带的参数信息,从所述目标...

【专利技术属性】
技术研发人员:徐志彬王军柴晨张丁一喻文强张琦
申请(专利权)人:中信建投证券股份有限公司
类型:发明
国别省市:

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

1