小工具知识网

当前位置: 首页 > 行业知识 > 苍穹外卖-day07 - 缓存菜品- 缓存套餐- 添加购物车- 查看购物车- 清空购物车

行业知识

苍穹外卖-day07 - 缓存菜品- 缓存套餐- 添加购物车- 查看购物车- 清空购物车

2026-11-01 01:13:31 来源:互联网转载

1. 缓存菜品

���redis来缓存菜品数据 , 减少数据库查询操作 ;

缓存逻辑 : 

  • 每个分类下的菜品保存一份缓存数据

  • 数据库中菜品数据有变更时清理缓存数据

     关键代码 : 

    @Autowired    private RedisTemplate redisTemplate;/**     * 根据分类id查询菜品     *     * @param categoryId     * @return     */    @GetMapping("/list")    @ApiOperation("根据分类id查询菜品")    public Result list(Long categoryId) {        //构造redis中的key,规则:dish_分类id        String key = "dish_" + categoryId;        //查询redis中是否存在菜品数据        List list = (List) redisTemplate.opsForValue().get(key);        if(list != null && list.size() > 0){            //如果存在,直接返回,无须查询数据库            return Result.success(list);        }        Dish dish = new Dish();        dish.setCategoryId(categoryId);        dish.setStatus(StatusConstant.ENABLE);//查询起售中的菜品        //如果不存在,查询数据库,将查询到的数据放入redis中        list = dishService.listWithFlavor(dish);                redisTemplate.opsForValue().set(key, list);        return Result.success(list);    }

    清理缓存 : 

    @Autowired    private RedisTemplate redisTemplate;/**     * 清理缓存数据     * @param pattern     */    private void cleanCache(String pattern){        Set keys = redisTemplate.keys(pattern);        redisTemplate.delete(keys);    }

    2. 缓存套餐

    详细参考 : 

    Spring Cache-CSDN博客

    3.添加购物车

    4.查看购物车

    5.清空购物车

    3,4,5都是基本的crud,就不写笔记了;

上一篇:神魔下载攻略,一键获取游戏客户端,轻松开启神魔之旅!

下一篇:轻松上手!手机铃声更换教程