【苍穹外卖笔记】第四天内容

发布时间:2026/11/3 13:57:13

【苍穹外卖笔记】第四天内容 一、课程内容预览自主完成套餐相关全部接口开发修复根据分类id查询菜品的Bug额外二、笔记第四天的内容没有视频资源需要我们使用之前学习到的知识自主地完成套餐相关全部接口的开发这部分需要各位手操完成只是在完成这部分时在最后的测试阶段我发现了一个业务代码存在的bug所以想在这里写下我修改bug的历程/** * 根据分类id查询菜品 * param categoryId * return */GetMapping(/list)ApiOperation(根据分类id查询菜品)publicResultListDishlist(LongcategoryId){ListDishlistdishService.list(categoryId);returnResult.success(list);}这个是我们原本设计的接口这个接口的作用是在添加和修改套餐时用于快速定位想要添加入套餐的菜品而使用的但是最后前后端联调测试的时候我发现前端按照分类查询各个菜品的功能完全正常不正常的时右上角按照菜品名查询菜品的功能我仔细研读了前端代码后发现这个功能会把name属性发送到/admin/dish/list而这个路径正是上面根据分类id查询菜品接口接收数据的请求路径但是这个接口只接收categoryId一种数据所以name无法传递过来自然使得按照菜品名查询的功能失效。这个时候我试图在同一个请求路径下写两个不同的接口接收数据/** * 根据菜品名字查询菜品 * param name * return */GetMapping(/list)ApiOperation(根据菜品名字查询菜品)publicResultListDishgetByName(RequestParamStringname){log.info(根据菜品名字查询菜品:{},name);ListDishdishsdishService.getByName(name);returnResult.success(dishs);}但是这又导致了另一个严重的bug两个接口请求路径完全相同请求方式也一样Spring 无法区分启动直接报错。所以我采用了重构这个接口的方法解决问题/** * 根据输入信息查询菜品 * param categoryId * return */GetMapping(/list)ApiOperation(根据输入信息查询菜品)publicResultListDishgetByCategoryIdOrName(LongcategoryId,Stringname){log.info(根据输入信息查询菜品:{},categoryId,name);ListDishdishsdishService.list(categoryId,name);returnResult.success(dishs);}使其同时接收两种数据同时重构了实现类/** * 根据分类id查询菜品 * param categoryId * return */OverridepublicListDishlist(LongcategoryId,Stringname){DishdishDish.builder().categoryId(categoryId).name(name).status(StatusConstant.ENABLE).build();returndishMapper.list(dish);}使其可以灵活适应这种变化这样修改后就没有错误了前端的分类查询菜品和搜索名称查询菜品都可以正常使用。三、结语这一天的内容虽然没有视频资源但却是我前几天学习所有内容的总结让我能够及时把刚学会的知识转化到项目编写上算是一次不错的经验积累。
延伸阅读

更多相关文章

2026/11/3 13:57:12

Vulkan进阶系列20 - Vulkan 1.0 API 一览

分类 API 作用 Physical Device 查询 vkEnumeratePhysicalDevices 枚举系统里的 GPU vkGetPhysicalDeviceFeatures 查询 GPU 支持哪些功能(几何着色器、各向异性过滤等) vkGetPhysicalDeviceProperties 查询 GPU 基本信息(型号、版本、限制参数) vkGetPhysicalDeviceFormat…

2026/10/30 9:08:30

AI论文写作工具哪家强?多款主流平台深度对比与评测

一、毕业党的论文困境:AI论文工具是解药还是鸡肋? 每年毕业季,无数毕业生都在为“写不完的论文”头疼——选题换了又换,大纲改了又改,好不容易憋出正文,一查重30%以上,参考文献还是AI论文工具瞎…

2026/11/3 13:53:49

硬件测试入门:从检视到评估,如何证明设计有错

简介:这份PPT面向硬件测试初学者与转岗工程师,系统梳理从测试理念到流程落地的入门知识,帮助读者建立完整的硬件测试认知框架,解决测试目的不清、方法零散、规范缺失等常见问题。资源包共1个文件,为793KB的PPT课件&…

2026/11/3 13:53:49

TensorFlow安装与生产部署避坑指南:从CUDA兼容到SavedModel实战

1. 这不是“装个库”那么简单:TensorFlow到底在解决什么问题? 你搜“tensorflow安装”,点开前五条结果,八成是“pip install tensorflow失败怎么办”“CUDA版本不匹配”“ImportError: DLL load failed”——但真正卡住你的&…

2026/11/3 13:53:49

高性能计算中的异构编程技术与优化实践

1. 高性能计算异构编程概述 在当今计算密集型应用领域,传统单一架构的计算设备已难以满足日益增长的性能需求。异构编程作为一种突破性的计算范式,通过协同利用CPU、GPU、FPGA等不同架构处理器的优势,为高性能计算提供了全新的解决方案。我在…

2026/11/3 13:53:49

服务器内存ECC故障定位:从EDAC日志到颗粒级排查

凌晨两点多,告警群里弹出一条消息:某机房一台双路服务器,带外管理卡的 SEL 日志里出现了连续的可纠正内存错误,五分钟内涨了三十多条。值班的 A 同学第一反应是"内存条坏了,明天换一根"。结果第二天换了同插…

2026/11/3 13:48:48

MySQL分区表实战:原理、优化与最佳实践

1. MySQL分区表概述 MySQL分区表是一种将大表物理分割为多个更小、更易管理的部分的技术,同时对外仍表现为单一逻辑表。分区技术最早出现在MySQL 5.1版本中,经过多年发展已成为处理海量数据的核心方案之一。 在实际生产环境中,当单表数据量达…

2026/11/3 7:47:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/2 6:39:12

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/3 1:04:48

STM32实战:基于MAX14431数字隔离器的SPI隔离通信方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/3 1:04:48

工业SPI隔离通信设计:MAX14431BAEE+与STM32L4A6RG实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/3 1:04:48

STM32+NRF24L01无线抢答器:硬件设计、通信协议与低功耗实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/3 7:47:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/2 6:39:12

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑