Spring Cache 自动缓存

天才阿梓 2024-4-23 48 4/23

常用注解:

  @EnableCacheing  //  开启缓存注解功能
  @Cacheable       //  在方法执行前Spring会先检查是否存在缓存,有的话直接将缓存返回,没有的话查数据库并缓存
  @CatchPut        //  将方法的返回值存放到缓存中
  @CacheEvict      //  将一条或多条缓存进行删除

Spring Cache 自动缓存

说明 SpringStarterSpringContent 默认已经包含 springCache 一些基础的依赖,不需要特别的功能直接就能使用。

1、代码示例

  
  //1、启动类上加上 @EnableCaching
  //2、使用 @CatchPut 或其他注解 操作方法的返回值存到redis 

 

实战演练

// 开启 SpringCache 缓存注解
@Slf4j
@EnableCaching
@SpringBootApplication
public class CacheDemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(CacheDemoApplication.class,args);
        log.info("项目启动成功...");
    }
}
// 调用 CachePut 向 Redis 缓存数据
@CachePut(cacheNames = "springCacheDemo", key = "#result.id") // = set springCacheDemo::1001 { age:20, name:"张三" }
@PostMapping
public User save(@RequestBody User user) {
    userMapper.insert(user);
    return user;
}
// 调用 Cacheable 查询 redis 若查到数据就直接返回
@Cacheable(cacheNames = "springCacheDemo",key = "#id")
@DeleteMapping
public void deleteById(Long id) {
    userMapper.deleteById(id);
}

 


- THE END -

天才阿梓

4月28日17:16

最后修改:2024年4月28日
4

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论