《JavaEE开发的颠覆者: Spring Boot实战》系列读书笔记
Spring boot的缓存机制
当我们需要重复地获取相同的数据的时候,大量的时间耗费在一次又一次的请求数据库中,导致程序性能恶化,浪费系统资源,这就需要缓存来解决这个问题。
我们知道内存的速度是远远快于硬盘的速度,缓存处理方式应该是:
-
1.先从缓存中拿数据,如果有,直接返回。
-
2.如果在缓存中没有此数据,则数据库查询,然后将查询结果存到缓存中。
类似的缓存技术有:Redis、EhCache、Guava等,现在一般常用的为Redis。
Spring Boot的缓存技术优势在于:
- 通过少量的配置注释即可使得既有代码支持缓存
- 支持开箱即用,即不用安装和部署额外第三方组件即可使用缓存
- 支持 SpEL(Spring Express Language),能使用对象的任何属性或者方法来定义缓存的 key 和 condition
- 支持 AspectJ,并通过其实现任何方法的缓存支持
- 支持自定义 key 和自定义缓存管理者,具有相当的灵活性和扩展性
对于缓存的操作,主要有:@Cacheable、@CachePut、@CacheEvict。
-
@Cacheable
当重复使用相同参数调用方法的时候,方法本身不会被调用执行,会先查看缓存中是否有数据,如果有数据,则直接返回缓存数据;若没有数据,执行该方法

本文介绍了Spring Boot的缓存机制,探讨了缓存如何提高程序性能,并重点讲解了@Cacheable、@CachePut和@CacheEvict三个关键注解的用法及它们在缓存操作中的作用。通过实例展示了如何在Spring Boot应用中启用缓存并进行测试。
最低0.47元/天 解锁文章
5万+

被折叠的 条评论
为什么被折叠?



