System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 缓存处理方法、电子设备以及存储介质技术_技高网

缓存处理方法、电子设备以及存储介质技术

技术编号:41072587 阅读:5 留言:0更新日期:2024-04-24 11:29
本申请提供一种缓存处理方法、电子设备以及存储介质,该方法包括:根据目标代码中的自动清除缓存注解,构建数据表方法映射关系;数据表方法映射关系是数据表名与缓存方法的映射关系;缓存方法为标记自动清除缓存注解的方法;在检测到对目标数据表执行目标操作的情况下,根据目标数据表以及数据表方法映射关系,确定与目标数据表对应的各目标方法,并构建与每个目标方法对应的目标键信息;目标操作对应的方法为缓存方法,目标操作为新增操作、更新操作和删除操作中的至少一种;根据目标键信息,对缓存中与目标键信息对应的目标值信息进行删除,以实现通过自动清除缓存注解,在对目标表执行目标操作时自动清除缓存,提升开发效率的效果。

【技术实现步骤摘要】

本申请涉及数据库,具体涉及一种缓存处理方法、电子设备以及存储介质


技术介绍

1、缓存是常用的提升应用性能的一种技术,比如:应用需要大量查询数据库的某张表的数据,由于计算机硬件的限制,磁盘访问速度比内存访问速度要慢很多,这种场景下,就可以使用缓存将表内的数据存储在内存中,以达到快速访问的目的。

2、然而,在应用开发过程中,业务代码时常需要访问数据库,也需要对数据库中的数据表建立缓存,但是,会出现删除了数据表的数据,忘记删除缓存中的对应数据,或者更新了数据表的数据,忘记更新缓存中的对应数据的问题,这就导致了数据表的数据和缓存中的数据不一致的问题,影响应用的使用。


技术实现思路

1、鉴于现有技术中的上述缺陷或不足,本申请旨在提供一种缓存处理方法、电子设备以及存储介质,以通过自动清除缓存注解,在对目标表执行目标操作时自动清除缓存,提升开发效率。

2、本申请实施例提供了一种缓存处理方法,该方法包括:

3、根据目标代码中的自动清除缓存注解,构建数据表方法映射关系;其中,所述数据表方法映射关系是数据表名与缓存方法的映射关系;所述缓存方法为标记所述自动清除缓存注解的方法;

4、在检测到对目标数据表执行目标操作的情况下,根据所述目标数据表以及所述数据表方法映射关系,确定与所述目标数据表对应的各目标方法,并构建与每个目标方法对应的目标键信息;其中,所述目标操作对应的方法为缓存方法,所述目标操作为新增操作、更新操作和删除操作中的至少一种;

5、根据所述目标键信息,对缓存中与所述目标键信息对应的目标值信息进行删除。

6、可选的,所述构建与每个目标方法对应的目标键信息,包括:

7、针对每个目标方法,获取与所述目标方法对应的目标类名和目标方法名;

8、根据所述目标类名和所述目标方法名,构建与所述目标方法对应的目标键信息。

9、可选的,在检测到对目标数据表执行目标操作的情况下,根据所述目标数据表以及所述数据表方法映射关系,确定与所述目标数据表对应的各目标方法之前,还包括:

10、在执行所述目标代码中的目标语句的情况下,确定所述目标语句对应的目标数据表,并判断所述目标数据表是否在所述数据表方法映射关系中;

11、在所述目标数据表在所述数据表方法映射关系中的情况下,确定所述目标数据表对应的方法为缓存方法;

12、在所述目标数据表对应的方法为缓存方法的情况下,确定检测到对所述目标数据表执行所述目标语句对应的目标操作;

13、其中,所述目标语句为新增语句、更新语句和删除语句中的至少一种。

14、可选的,在检测到对目标数据表执行目标操作的情况下,根据所述目标数据表以及所述数据表方法映射关系,确定与所述目标数据表对应的各目标方法之前,还包括:

15、获取数据表操作日志,解析所述数据表操作日志,确定所述数据表操作日志中的各数据表操作;

16、针对每个所述数据表操作,判断所述数据表操作对应的目标数据表是否在所述数据表方法映射关系中;

17、在所述数据表操作对应的目标数据表在所述数据表方法映射关系中的情况下,将所述数据表操作确定为目标操作,并确定检测到对所述目标数据表执行所述目标操作。

18、可选的,该方法还包括:

19、在执行查询语句且所述查询语句对应的方法为缓存方法的情况下,将所述查询语句对应的方法确定为待处理方法,并根据所述查询语句以及所述待处理方法,确定待处理类名、待处理方法名以及查询参数;

20、根据所述待处理类名、所述待处理方法名以及所述查询参数,构建第一键信息,并根据所述待处理类名以及所述待处理方法名,构建第二键信息;

21、根据所述第一键信息,返回所述查询语句对应的缓存值,并将所述缓存值存储至所述缓存中,在所述缓存中建立所述第一键信息与所述缓存值之间的对应关系和所述缓存值与所述第二键信息之间的对应关系,其中,所述目标键信息属于所述第二键信息。

22、可选的,所述根据所述第一键信息,返回所述查询语句对应的缓存值,并将所述缓存值存储至所述缓存中,在所述缓存中建立所述第一键信息与所述缓存值之间的对应关系和所述缓存值与所述第二键信息之间的对应关系,包括:

23、在缓存中存在与所述第一键信息对应的第一值信息的情况下,将所述第一值信息作为所述查询语句对应的缓存值;

24、在所述缓存中不存在与所述第一键信息对应的第一值信息的情况下,执行所述第一键信息对应的查询语句,返回所述查询语句对应的缓存值,将所述缓存值作为与所述第一键信息对应的第一值信息,并构建所述缓存值与所述第二键信息之间的对应关系。

25、可选的,所述根据所述目标键信息,对缓存中与所述目标键信息对应的目标值信息进行删除,包括:

26、根据所述目标操作,确定所述目标数据表中的操作数据;

27、从所述目标键信息对应的各目标值信息中,确定出与所述操作数据相关的待删除信息,并对缓存中的所述待删除信息删除。

28、可选的,所述根据目标代码中的自动清除缓存注解,构建数据表方法映射关系,包括:

29、根据所述目标代码,确定所述目标代码中的各仓库类;

30、针对每个仓库类,确定所述仓库类对应的数据表名,以及所述仓库类对应的各仓库类方法;

31、针对每个仓库类方法,判断所述仓库类方法是否标记有自动清除缓存注解;

32、在所述仓库类方法标记有自动清除缓存注解的情况下,将所述仓库类方法确定为缓存方法,并将所述仓库类方法与所述仓库类方法对应的数据表名的映射关系添加至所述数据表方法映射关系中。

33、本申请实施例还提供了一种电子设备,所述电子设备包括:

34、处理器和存储器;

35、所述处理器通过调用所述存储器存储的程序或指令,用于执行如任一实施例所述的缓存处理方法的步骤。

36、本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如任一实施例所述的缓存处理方法的步骤。

37、综上,本申请提出一种缓存处理方法,通过根据目标代码中的自动清除缓存注解,构建数据表方法映射关系,以便于后续通过数据表快速确定使用该数据表的缓存方法,进一步的,在检测到对目标数据表执行目标操作的情况下,根据目标数据表以及数据表方法映射关系,确定与目标数据表对应的各目标方法,并构建与每个目标方法对应的目标键信息,以在对数据表进行增删改操作的情况下,构建目标键信息,根据目标键信息,对缓存中与目标键信息对应的目标值信息进行删除,以在缓存中查找由于数据表变化所影响的数据,实现了通过自动清除缓存注解,在对目标表执行目标操作时自动清除缓存,提升开发效率的效果。

本文档来自技高网...

【技术保护点】

1.一种缓存处理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述构建与每个目标方法对应的目标键信息,包括:

3.根据权利要求1所述的方法,其特征在于,在检测到对目标数据表执行目标操作的情况下,根据所述目标数据表以及所述数据表方法映射关系,确定与所述目标数据表对应的各目标方法之前,还包括:

4.根据权利要求1所述的方法,其特征在于,在检测到对目标数据表执行目标操作的情况下,根据所述目标数据表以及所述数据表方法映射关系,确定与所述目标数据表对应的各目标方法之前,还包括:

5.根据权利要求1所述的方法,其特征在于,还包括:

6.根据权利要求5所述的方法,其特征在于,所述根据所述第一键信息,返回所述查询语句对应的缓存值,并将所述缓存值存储至所述缓存中,在所述缓存中建立所述第一键信息与所述缓存值之间的对应关系和所述缓存值与所述第二键信息之间的对应关系,包括:

7.根据权利要求1所述的方法,其特征在于,所述根据所述目标键信息,对缓存中与所述目标键信息对应的目标值信息进行删除,包括:

8.根据权利要求1所述的方法,其特征在于,所述根据目标代码中的自动清除缓存注解,构建数据表方法映射关系,包括:

9.一种电子设备,其特征在于,所述电子设备包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如权利要求1至8任一项所述的缓存处理方法的步骤。

...

【技术特征摘要】

1.一种缓存处理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述构建与每个目标方法对应的目标键信息,包括:

3.根据权利要求1所述的方法,其特征在于,在检测到对目标数据表执行目标操作的情况下,根据所述目标数据表以及所述数据表方法映射关系,确定与所述目标数据表对应的各目标方法之前,还包括:

4.根据权利要求1所述的方法,其特征在于,在检测到对目标数据表执行目标操作的情况下,根据所述目标数据表以及所述数据表方法映射关系,确定与所述目标数据表对应的各目标方法之前,还包括:

5.根据权利要求1所述的方法,其特征在于,还包括:

6.根据权利要求5所述的方法,其特征在于,所述根据所述第一...

【专利技术属性】
技术研发人员:黄鑫
申请(专利权)人:重庆赛力斯新能源汽车设计院有限公司
类型:发明
国别省市:

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

1