当前位置: 首页 > news >正文

Java项目-瑞吉外卖Day3

填充公共字段:

目的:由于某些属性,例如createdTime这些需要填充的字段会在多个地方出现,所以考虑使用公共字段自动填充的办法减少重复代码。
在对应属性上加入@TableField注解。通过fill字段表明策略,是插入/更新的时候填充字段。

实现MyMetaObjectHandler处理器类,实现MetaObjectHandler接口。可以拦截到插入对象/更新对象时字段自动填充的操作。

获取createUser和updateUser时,需要根据session获取,然而这个类中无法获取到session。

可以考虑使用ThreadLocal线程类获取到员工id,因为从用户登录验证->更新员工信息->元数据处理器算一次请求,使用的是同一线程,所以可以获取到相同的员工id。

创建基于ThreadLocal的工具类,用来设置、查看同一线程中保存的变量。

根据以上工具类修改代码:
登录检查,将需要保存的当前用户ID存入线程中。

当新增、修改信息时,再次使用工具类获取当前用户ID。

新增菜品/套餐分类:
先创建实体类

创建对应的mapper,service,serviceImpl,controller。

点击新增分类,可以看到请求接口如下:

添加接口:

查看前端代码,发现封装的json对象只需要code这个属性,所以服务器封装泛型只需要封装成String类型即可。

运行的时候报错,idea Error:(13, 52) java: 找不到符号 符号: 类 Category。明明有这个类,但是找不到。解决办法:在控制台使用mvn clean清除缓存,重新启动就好了

类别分页查询:
照着之前的改改,用sort字段排个序就行。

删除分类:
由于删除分类时,需要查看分类是否关联菜品和套餐,所以需要先创建Dish和Setmeal实体类。创建对应的Mapper类和Service类和ServiceImpl类。

前端删除请求如下:

后端代码(重写categoryService的remove方法,考虑到不能删除关联菜品、套餐的类别):

查询关联菜品,若有关联抛出异常。

创建异常类。

在全局异常管理器捕捉异常,并向前端返回友好提示。

修改类别:

前端发送的请求:

后端代码:

http://www.lryc.cn/news/257817.html

相关文章:

  • Java集合框架之争:ArrayList vs LinkedList
  • 一个用于处理嵌入式系统中的 NAND Flash 存储器的工具 `kobs-ng`
  • 【小白专用】MySQL查询数据库所有表名及表结构其注释
  • 数据库中常用的锁
  • 关于对向量检索研究的一些学习资料整理
  • 软件开发流程分析
  • 017 OpenCV 向量机SVM
  • Qt练习题
  • 文本转图像 学习笔记
  • 开源CDN软件GoEdge —— 筑梦之路
  • 基于SpringBoot+Vue会员制医疗预约服务管理信息系统(Java毕业设计)
  • 【Linux | 编程实践】防火墙 (网络无法访问)解决方案 Vim常用快捷键命令
  • 仅 CSS 阅读进度条
  • 深度剖析中国居民消费价格指数CPI数据可视化案例-Python可视化技术实现(附完整源码)【数据可视化项目案例-16】
  • SpringBoot——嵌入式 Servlet容器
  • 王炸升级!PartyRock 10分钟构建 AI 应用
  • 文件管理和操作工具Path Finder mac功能介绍
  • 转换 pytorch 格式模型为 caffe格式模型 pth2caffemodel
  • 【S32DS RTD实战】-1.3-S32K3工程生成S19,BIN,Hex文件,以及Post-build steps的妙用
  • Java工程找不到javax.xml.bind.annotation包
  • 【C语言】网络字节序和主机字节序
  • 极简模式,助力宏观数据监控
  • 智能优化算法应用:基于花授粉算法3D无线传感器网络(WSN)覆盖优化 - 附代码
  • IT圈的“鄙视链”大揭秘:从Java到Go,编程语言之战!
  • 【C++】算法库(复制操作、交换操作、变换操作)
  • CV计算机视觉每日开源代码Paper with code速览-2023.12.6
  • 面试经典150题(1-2)
  • MySQL使用教程
  • 微服务学习:Ribbon实现客户端负载均衡,将请求分发到多个服务提供者
  • 孩子还是有一颗网安梦——Bandit通关教程:Level0