报错:

nested exception is org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost/:6379] with root cause

解决方法:忘记在电脑上打开redis
redis打开口令:redis-server.exe redis.windows.conf

新增菜品API为什么要先清除缓存,而不是直接放入缓存中

解决思路和方法:
1.缓存中放的是不同的分类下的菜品,重点是分类
2.新增的菜品会改变分类中的数据所以要清楚之前分类的数据

@ApiOperation("新增套餐接口")
    @CacheEvict(value = "setmealCache",key = "#setmealDTO.categoryId")

//由于分类查询后的数据已经存进redis了,如果新增一个数据不清的话,会不同步

获取当前登录的用户id

在这里插入图片描述
由于JWT在拦截的时候,会解析令牌,令牌其中就包含用户id.通过线程就能获得当前用户id.

事务

实现一个功能时,若操作多个表,需要在这个方法上,加上@Transactional
若不加,代码跑到一半出了问题,一个表的数据已经导入,但另一个表的数据没有导入,导致数据库数据出问题.
加上注解,可以保证,在一个事务没做完前,数据库内都不会存入数据

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐