苍穹外卖(缓存商品、购物车)
缓存商品、购物车
缓存菜品
实现思路
代码开发
缓存菜品数据
清理缓存数据
新增菜品
修改菜品
批量删除菜品
起售、停售菜品
抽取到方法
缓存套餐
Spring Cache
入门案例
@EnableCaching
@CachePut
@Cacheable
@CacheEvict
代码开发
导入Spring Cache和Redis相关maven坐标
在启动类上加入@EnableCaching注解,开启缓存注解功能
在用户端接口SetmealController的 list 方法上加入@Cacheable注解
在管理端接口SetmealController的 save、delete、update、startOrStop等方法上加入CacheEvict注解
添加购物车
接口设计
数据库设计
代码开发
创建ShoppingCartController
创建ShoppingCartServiceImpl实现类
创建ShoppingCartMapper接口
创建ShoppingCartMapper.xml
查看购物车
接口设计
代码开发
在ShoppingCartController中创建查看购物车的方法
在ShoppingCartService接口中声明查看购物车的方法
在ShoppingCartServiceImpl中实现查看购物车的方法
功能测试
清空购物车
接口设计
代码开发
在ShoppingCartController中创建清空购物车的方法
在ShoppingCartService接口中声明清空购物车的方法
在ShoppingCartServiceImpl中实现清空购物车的方法
在ShoppingCartMapper接口中创建删除购物车数据的方法
缓存菜品
实现思路
每个分类下的菜品保存一份缓存数据
数据库中菜品数据有变更时清理缓存数据
代码开发
缓存菜品数据
清理缓存数据
修改管理端接口 DishController 的相关方法,加入清理缓存的逻辑,需要改造的方法:
新增菜品
修改菜品
批量删除菜品
起售、停售菜品
新增菜品
修改菜品
批量删除菜品
起售、停售菜品
抽取到方法
缓存套餐
Spring Cache
Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。
入门案例
@EnableCaching
在启动类上加入@EnableCaching注解,开启缓存注解功能
@CachePut
@Cacheable
@CacheEvict
代码开发
导入Spring Cache和Redis相关maven坐标
初始代码已提供
在启动类上加入@EnableCaching注解,开启缓存注解功能
在用户端接口SetmealController的 list 方法上加入@Cacheable注解
在管理端接口SetmealController的 save、delete、update、startOrStop等方法上加入CacheEvict注解
添加购物车
接口设计
数据库设计
代码开发
初始工程已提供DTO