当前位置: 首页 > news >正文

苍穹外卖--缓存菜品Spring Cache

Spring Cache是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。

Spring Cache提供了一层抽象,底层可以切换不同的缓存实现,例如:

①EHCache

②Caffeine

③Redis

常用注解:

代码开发:

package com.itheima.controller;import com.itheima.entity.User;
import com.itheima.mapper.UserMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.CachePut;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.web.bind.annotation.*;@RestController
@RequestMapping("/user")
@Slf4j
public class UserController {@Autowiredprivate UserMapper userMapper;@PostMapping@CachePut(cacheNames = "userCache",key="#user.id")//如果使用Spring Cache缓存数据,key的生成:userCache::1public User save(@RequestBody User user){userMapper.insert(user);return user;}@DeleteMapping@CacheEvict(cacheNames = "userCache",key = "#id")public void deleteById(Long id){userMapper.deleteById(id);}@DeleteMapping("/delAll")@CacheEvict(cacheNames = "userCache",allEntries = true)public void deleteAll(){userMapper.deleteAll();}@GetMapping@Cacheable(cacheNames = "userCache",key = "#id")//key的生成:userCache::10public User getById(Long id){User user = userMapper.getById(id);return user;}}

相关文章:

  • pytorch 实战二 CNN手写数字识别
  • 数据库学习笔记(十六)--控住流程与游标
  • C/C++的OpenCV 地砖识别
  • JVM 参数调优核心原则与常用参数
  • 【卫星通信】高通提案S2-2504588解读-基于控制平面优化的GEO卫星IMS语音解决方案
  • 闲鱼与淘宝跨平台运营的自动化趋势
  • 使用 Git 将本地仓库上传到 GitHub 仓库的完整指南
  • 2.2 状态空间表达式的解
  • iOS swiftUI的实用举例
  • 查找PPT中引用的图表在哪个EXCEL文件中
  • Android 蓝牙默认名称设置分析总结
  • 组件传值的两种用法(父传子)
  • 嵌入式学习笔记C语言阶段--14可变长数组
  • 【Elasticsearch】数据预处理(含实战案例)
  • 基于GNU Radio Companion搭建的AM信号实验
  • AI Agent实战 - LangChain+Playwright构建火车票查询Agent
  • 初探Qt信号与槽机制
  • 【卫星通信】卫星与5G深度融合的架构研究——释放非地面网络潜能,构建全球无缝连接【3GPP TR 23.700-19 V0.1.0 (2025-04)】
  • C++继承和多态
  • Kafka - 并发消费拉取数据过少故障分析
  • 阿里云服务器登录入口/seo网站推广如何做
  • 一般网站有哪几部分构成/日照seo公司
  • 常平网站开发/赣州seo
  • 广告营销策划案/seo整站优化一年价格多少
  • 上海那家公司做响应式网站建设/关键词优化的策略有哪些
  • 网站首页导航栏怎么做/竞价推广专员