代码示例如下:
@PostMapping
@ApiOperation("新增套餐")
@CacheEvict(cacheNames = "setmealCache",key = "#setmealDTO.categoryId")
public Result save(@RequestBody SetmealDTO setmealDTO){
log.info("新增套餐功能实现");
setmealService.saveWithDish(setmealDTO);
return Result.success();
}
@DeleteMapping
@ApiOperation("批量删除套餐")
@CacheEvict(cacheNames = "setmealCache",allEntries = true)
public Result delete(@RequestParam List<Long> ids){
log.info("套餐批量删除:{}",ids);
setmealService.deleteBatch(ids);
return Result.success();
}
其中在 @CacheEvict
注解中,cacheNames
参数用于指定需要清除的缓存的名称,可以是一个字符串数组,指定多个缓存名称。当 allEntries
参数设置为 true
时,表示清除指定缓存中的所有条目。