暂存因为我自己还没搞清楚。(感觉今天mentor比较烦躁不敢打扰他)
首先在application启动类中添加@EnableCaching
然后在需要缓存的方法或者类前面加@Cacheable
或者@CachePut
或者@CacheEvict
先使用@Cacheable
。
在查询方法的ServiceImpl之前加@Cacheable
。
举个栗子:
@Cacheable(cacheNames = "balabalaCache",key = "#id")
Cachenames要在.yml配置文件里配置:
spring:
cache:
cache-names: balabalaCache
如果key值重复就会直接从缓存里读而不会使用这个方法了。
测试可以在这个方法中打印一句话。
可以看到selectbyid的时候如果id相同第二次查询是不会打印这句话的,因为直接从缓存中读的。
update:
发现cachenames是必须配置的。
测试:
cachenames配置错误,报错cannot find
cachenames为空,报错at least
网友评论