问题:不是所有的数据都需要请求后端的
- 不是所有的数据都需要请求后端的,有些数据是
重复的、可以复用的
解决方案:缓存
实现思路:每一个分类为一个key,一个可以下面可以有很多菜品
- 前端是按照分类查询的,所以我们需要通过分类来缓存
缓存代码
/**
* 根据分类id查询菜品
*
* @param categoryId
* @return
*/
@GetMapping("/list")
@ApiOperation("根据分类id查询菜品")
public Result<List<DishVO>> list(Long categoryId) {
// 查询redis缓存
String key = "dish_" + categoryId;
// 如果缓存中有数据,直接返回
List<DishVO> list= (List<DishVO>) redisTemplate.opsForValue().get(key);
if(ObjectUtil.isNotEmpty(list)){
return Result.success