Spring Cache 缓存解决方案

1,Cache 介绍

Spring Cache 是一套框架缓存的解决方案,SpringBoot 有效的对 Cache 做出了简化,只需要使用注解即可操作我们保存在缓存区(包括内存区,缓存服务器Redis)的缓存数据(餐桌预定表,用户表)

应用系统需要通过 Cache 来缓存不经常改变的数据,以提高系统性能和增加系统吞吐量 。避免直接访问数据库等低速存储区系统 ,缓存的数据通常存放在访问速度更快的内存中或者是低延迟存取的存储器,服务器上 。

Spring Boot 集成 Cache 步骤如下

1,在 Maven 的 pom.xml 导入如下依赖

1 <!-- spring cache -->
2 <dependency>
3        <groupId>org.springframework.boot</groupId>
4        <artifactId>spring-boot-starter-cache</artifactId>
5 </dependency>

2,在 application.properties 中设置缓存中间件类型

1 <!-- 配置缓存中间价的类型 -->
2 spring.cache.type=redis (MonDB, Simple, none)

3,在启动类中开启 Cache

1 @EnableCaching
2 @SpringBootApplication
3 public class BookSystemMicroServices {
4     public static void main(String[] args) {
5         SpringApplication.run(BookSystemMicroServices.class, args);
6     }
7 }

2,注解驱动缓存

一旦配置好 SpringBoot 缓存,就可以在 Spring 管理的 Bean 中使用缓存注解,通常可以直接放在 Service 类方法上

  • @Cacheable  作用在方法上,触发缓存读取操作
  • @CacheEvict  作用在方法上,触发缓存失效操作
  • @CachePut  作用在方法上,触发缓存更新操作
  • @Cache  作用在方法上,综合上面的各种操作,在有场景下,调用业务会触发多种缓存操作
  • @CacheConfig  ,在类上设置当前缓存的一些公共设置

原文地址:https://www.cnblogs.com/zouzhu1998/p/12015952.html

时间: 2024-10-29 10:46:32

Spring Cache 缓存解决方案的相关文章

注释驱动的 Spring cache 缓存介绍--转载

概述 Spring 3.1 引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCache 或者 OSCache),而是一个对缓存使用的抽象,通过在既有代码中添加少量它定义的各种 annotation,即能够达到缓存方法的返回对象的效果. Spring 的缓存技术还具备相当的灵活性,不仅能够使用 SpEL(Spring Expression Language)来定义缓存的 key 和各种 condition,还提供开箱即用的缓存

注释驱动的 Spring cache 缓存介绍

概述 Spring 3.1 引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCache 或者 OSCache),而是一个对缓存使用的抽象,通过在既有代码中添加少量它定义的各种 annotation,即能够达到缓存方法的返回对象的效果. Spring 的缓存技术还具备相当的灵活性,不仅能够使用 SpEL(Spring Expression Language)来定义缓存的 key 和各种 condition,还提供开箱即用的缓存

[转]注释驱动的 Spring cache 缓存介绍

原文:http://www.ibm.com/developerworks/cn/opensource/os-cn-spring-cache/ 概述 Spring 3.1 引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCache 或者 OSCache),而是一个对缓存使用的抽象,通过在既有代码中添加少量它定义的各种 annotation,即能够达到缓存方法的返回对象的效果. Spring 的缓存技术还具备相当的灵活性,不仅能

Spring cache

注释驱动的 Spring cache 缓存介绍 介绍 spring 3.1 激动人心的新特性:注释驱动的缓存,本文通过一个简单的例子进行展开, 通过对比我们原来的自定义缓存和 spring 的基于注释的 cache 配置方法,展现了 spring cache 的强大之处, 然后介绍了其基本的原理,扩展点和使用场景的限制.通过阅读本文,你可以短时间内掌握 spring 带来的强大缓存技术, 在很少的配置下即可给既有代码提供缓存能力. 概述 Spring 3.1 引入了激动人心的基于注释(annot

Spring Cache扩展:注解失效时间+主动刷新缓存

*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* BLOCKS =============================================================================*/ p, blockquote, ul, ol, dl, table, pre { margin: 15px 0; } /* HEAD

spring boot guava cache 缓存学习

http://blog.csdn.net/hy245120020/article/details/78065676 ************************************************************ spring boot guava cache 缓存学习 自定义key 自定义全局key过期时间,缓存个数 针对单个key自定义过期时间,缓存个数 引入依赖 <dependency> <groupId>org.springframework.boo

Spring Cache抽象详解

缓存简介 缓存,我的理解是:让数据更接近于使用者:工作机制是:先从缓存中读取数据,如果没有再从慢速设备上读取实际数据(数据也会存入缓存):缓存什么:那些经常读取且不经常修改的数据/那些昂贵(CPU/IO)的且对于相同的请求有相同的计算结果的数据.如CPU--L1/L2--内存--磁盘就是一个典型的例子,CPU需要数据时先从L1/L2中读取,如果没有到内存中找,如果还没有会到磁盘上找.还有如用过Maven的朋友都应该知道,我们找依赖的时候,先从本机仓库找,再从本地服务器仓库找,最后到远程仓库服务器

转:Spring Cache抽象详解

缓存简介 缓存,我的理解是:让数据更接近于使用者:工作机制是:先从缓存中读取数据,如果没有再从慢速设备上读取实际数据(数据也会存入缓存):缓存什么:那些经常读取且不经常修改的数据/那些昂贵(CPU/IO)的且对于相同的请求有相同的计算结果的数据.如CPU--L1/L2--内存--磁盘就是一个典型的例子,CPU需要数据时先从L1/L2中读取,如果没有到内存中找,如果还没有会到磁盘上找.还有如用过Maven的朋友都应该知道,我们找依赖的时候,先从本机仓库找,再从本地服务器仓库找,最后到远程仓库服务器

Spring 的缓存抽象

https://docs.spring.io/spring/docs/5.0.13.RELEASE/spring-framework-reference/integration.html#cache 从3.1版开始,Spring Framework提供了对现有Spring应用程序透明地添加缓存的支持. 与事务支持类似,缓存抽象允许一致地使用各种缓存解决方案,而对代码的影响最小. 从Spring 4.1开始,通过JSR-107注释和更多自定义选项的支持,缓存抽象得到了显着改进. 抽象的核心是将缓存