【SpringBoot篇】使用Spring Cache高效处理缓存数据

这篇具有很好参考价值的文章主要介绍了【SpringBoot篇】使用Spring Cache高效处理缓存数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java
Spring Cache是一个框架,只要简单加一个注解,就能实现缓存功能。Spring Cache是Spring Framework提供的一个模块,它为应用程序添加了缓存支持。通过使用Spring Cache,你可以在方法级别上定义缓存规则,将方法的返回结果缓存起来,以提高方法调用的性能和响应速度。

🌹简述Spring Cache

是一个框架,只要简单加一个注解,就能实现缓存功能
Spring Cache 是 Spring Framework 提供的一个模块,它为应用程序添加了缓存支持。通过使用 Spring Cache,你可以在方法级别上定义缓存规则,将方法的返回结果缓存起来,以提高方法调用的性能和响应速度。

Spring Cache 的主要特点和功能包括:

注解驱动:Spring Cache 基于注解,通过在方法上添加 @Cacheable、@CachePut、@CacheEvict 等注解,来定义缓存规则和行为。

支持多种缓存实现:Spring Cache 支持多种常见的缓存实现,包括 Ehcache、Redis、Caffeine、ConcurrentMap 等,你可以根据自己的需求选择合适的缓存提供者。

灵活的缓存配置:你可以通过配置文件或者 Java 代码来灵活地配置缓存管理器、缓存的过期时间、缓存的键生成策略等。

支持条件化的缓存操作:除了基本的缓存注解外,Spring Cache 还支持条件化的缓存操作,比如通过 SpEL 表达式来定义条件,决定是否执行缓存操作。

总之,Spring Cache 提供了一种便捷的方式来实现方法级别的缓存,使得开发者可以专注于业务逻辑的实现,而不必过多关注缓存的管理和维护。这样可以有效地提升应用程序的性能,并减少对底层缓存实现的耦合。

🏳️‍🌈常用注解

【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java

@Cacheable:触发将方法返回结果缓存。
@CacheEvict:触发从缓存中清除一条或多条数据。
@CachePut:触发将方法返回结果更新到缓存。
@Caching:组合多个缓存注解在一个方法上。
@CacheConfig:在类级别共享缓存注解的通用配置。

🌺使用SpringCache

使用SpringCache需要把下面的代码导入到pom文件中

  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-cache</artifactId>
            <version>2.7.3</version>
        </dependency>

这样子我们就可以使用SpringCache了

我们打开下面链接里面的文件,我们下面要使用文件中的代码进行讲解
我用夸克网盘分享了「springcache-demo.zip」,点击链接即可保存。打开「夸克APP」 链接:https://pan.quark.cn/s/571a45c464d6

我们首先来启动Redis服务
【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java

CacheDemoApplication.java

在启动类上加上这个注解,开启缓存注解功能

@EnableCaching

【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java

🛸@Cacheable注解

进入controller包
UserController.java

加入下面的注解

@CachePut

插入数据的同时,我们还需要把数据保存到Redis中一份
【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java

⭐测试

我们启动项目,输入http://localhost:8888/doc.html打开接口文档进行测试
【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java
发现发送成功,我们去查看数据库,发现数据库已经插入了一条数据了

我们打开Redis Desktop Manager,连接成功后,发送数据
发现

user5对象已经进行了序列化
【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java

🛸@CacheEvict

🎍一次清理一条数据

如果我们把数据库中的数据给删除掉了,那么对应的缓存数据我们也应该删除,下面我们就来使用@CacheEvict注解来删除缓存数据
我们加上这一段代码

@CacheEvict(cacheNames = "userCache",key = "#id")

然后启动项目
【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java
输入http://localhost:8888/doc.html打开接口文档进行测试

【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java

【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java
【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java

查询数据库,发现数据库里面对应id=2的字段被删除了
Redis缓存也删除了

🎍一次删除多条数据

我们在deleteAll这个方法中进行操作
仍然加上@CacheEvict注解

@CacheEvict(cacheNames = "userCache",allEntries = true)

【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java
使用接口文档http://localhost:8888/doc.html发送数据,就可以删除所有缓存了

本文介绍了Spring Cache的常用注解及示例,让大家快速上手Spring Cache的使用。Spring Cache是一个非常强大的缓存框架,能够通过简单的注解就实现缓存,大大简化了我们的开发工作。希望本文对大家有所帮助,如果还有疑问,欢迎在评论区交流。

【SpringBoot篇】使用Spring Cache高效处理缓存数据,SpringBoot,spring,spring boot,后端,java文章来源地址https://www.toymoban.com/news/detail-752833.html

到了这里,关于【SpringBoot篇】使用Spring Cache高效处理缓存数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 三、Spring Cache + Redis 缓存数据

    Spring Cache 是一个非常优秀的缓存组件。自Spring 3.1起,提供了类似于@Transactional注解事务的注解Cache支持,且提供了Cache抽象,方便切换各种底层Cache(如:redis) 使用Spring Cache的好处:  1,提供基本的Cache抽象,方便切换各种底层Cache;  2,通过注解Cache可以实现类似于事务

    2024年02月05日
    浏览(27)
  • Spring Boot 3.2项目中使用缓存Cache的正确姿势!!!

    你是否曾想过为什么在 Spring Boot 应用中缓存是如此重要?答案在于它通过减少数据检索时间来提高性能。在本文中,我们将深入探讨缓存对微服务模式的影响,并探讨根据操作易用性、速度、可用性和可观测性等因素选择正确缓存的重要性。我们还将探讨如何最大程度地提高

    2024年02月05日
    浏览(55)
  • Spring | Spring Cache 缓存框架

    Spring Cache 是 Spring 的一个框架, 实现了基于注解的缓存功能 。只需简单加一个 注解 ,就能实现 缓存功能 。 Spring Cache提供了一层抽象 , 底层可以切换不同的缓存实现 。比较 常见 的(底层) 缓存实现 有: Redis、EHCache、Caffeine 。可自定义地修改 Spring Cache 底层的 缓存实现 。

    2024年02月08日
    浏览(35)
  • Spring Boot进阶(70):如何在Spring Boot中使用FastJson实现高效的JSON数据处理?

      随着互联网的发展,JSON(JavaScript Object Notation)已成为近年来使用最广泛的数据交换格式之一。为了提高JSON数据的处理效率,目前市面上常用的JSON解析库有Jackson、Gson、FastJson等。本文将介绍如何在Spring Boot中使用FastJson实现高效的JSON数据处理。   那么,具体如何实现

    2024年02月09日
    浏览(37)
  • Spring Boot整合Redis的高效数据缓存实践

    引言 在现代Web应用开发中,数据缓存是提高系统性能和响应速度的关键。Redis作为一种高性能的缓存和数据存储解决方案,被广泛应用于各种场景。本文将研究如何使用Spring Boot整合Redis,通过这个强大的缓存工具提高应用的性能和可伸缩性。 整合redis,需要先安装redis Redis 

    2024年01月22日
    浏览(44)
  • Spring Cache框架(缓存)

    1、介绍: Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单加个注解,就能实现缓存功能。它提供了一层抽象,底层可以切换不同的cache实现。具体就是通过 CacheManager 接口来实现不同的缓存技术。 针对不同的混存技术需要实现不同的 CacheManage r: CacheManager 描述

    2024年02月11日
    浏览(44)
  • 简述Spring Cache缓存策略

    Spring框架提供了一种名为Spring Cache的缓存策略。Spring Cache是一种抽象层,它提供了一种方便的方式来管理缓存,并与Spring应用程序中的各种缓存实现(如EhCache、Guava、Caffeine等)集成。 Spring Cache使用注解(如@Cacheable、@CachePut、@CacheEvict等)来描述与缓存相关的操作。这些注解

    2024年02月10日
    浏览(40)
  • Spring Boot 缓存 Cache 入门

    在系统访问量越来越大之后,往往最先出现瓶颈的往往是数据库。而为了减少数据库的压力, 我们可以选择让产品砍掉消耗数据库性能的需求 。 当然也可以引入缓存,在引入缓存之后,我们的读操作的代码,往往代码如下: 这段代码,是比较常用的缓存策略,俗称**“被动写

    2024年02月15日
    浏览(41)
  • 8.10 用redis实现缓存功能和Spring Cache

    什么是缓存? 缓存(Cache), 就是数据交换的缓冲区,俗称的缓存就是缓冲区内的数据,一般从数据库中获取,存储于本地代码。 通过Redis来缓存数据,减少数据库查询操作; 逻辑 每个分类的菜品保存一份缓存数据 数据库菜品数据有变更时清理缓存数据 如何将商品数据缓存起来。 控

    2024年02月13日
    浏览(46)
  • 使用Spring Cache优化数据库访问

    在这篇博客中,我们将学习如何使用Spring Cache来优化数据库访问,提高系统性能。我们将创建一个简单的图书管理应用作为示例,并演示如何通过缓存减少对数据库的频繁查询。 首先,我们看一下项目的基本结构: 我们使用了Spring Boot和Spring Data JPA来简化项目配置。以下是主

    2024年02月02日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包