1.【⭐解决每次更新或创建员工,菜品,套餐等都需要设置更新时间创建时间问题】 学习MyBatis Plus中自动填充公共字段功能 学习使用MetaObjectHandler 学习了@TableField注解
4. 【⭐BUG解决】MyBatis Plus 中进行分页查询时查到的Page对象中的totalCount属性为0。忘记写MP配置类中的分页拦截器 https://blog.csdn.net/qq_38974638/article/details/119720371
2.【💡功能扩展想法】关于购物车扩展功能的想法。给购物车属性添加桌号,从而实现多个用户只要是属于同一个桌子,那么他们点的菜品共享。此外还应该在购物车记录中添加是否已经结完账的标志位,这样下次在查询的时候这些数据就不会查询出来
4.【💪主解决问题】由于之前设置MetaDataHandler来自动填充字段中的UpdateTime,UpdateUser, CreateTime, CreateUser, 但是购物车记录中只有CreateTime,此时如果在购物车实体类的CreateTime字段使用@Table会报错,于是去网上搜索学习到MetaDataObject的HasSetter方法,进而解决这一问题
5.【💡功能扩展想法】 清空购物车的做法是直接将数据删除,这一点不好。应该设置一个标志位,用户已经结账的购物记录设置一下,如果用户没付款的清空,那么就直接清空了。后续的数据可以作为营业指标分析,在后台结合Echarts前端插件可视化展示数据。
2.【天坑!】缓解数据库压力,采用一主一从搭建MySQL集群。由于使用虚拟机比较麻烦,这里使用了Docker创建两个MySQL容器进行测试。【天坑!!!】 不知什么原因 一直不成功,最终通过更换MySQL版本解决!!!!花了好几个小时 尝试各种办法
docker run -p 3307:3306 --name mysql-master \
-v /mydata/mysql/master/log:/var/log/mysql \
-v /mydata/mysql/master/data:/var/lib/mysql \
-v /mydata/mysql/master/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7.34
docker run -p 3308:3306 --name mysql-salve \
-v /mydata/mysql/salve/log:/var/log/mysql \
-v /mydata/mysql/salve/data:/var/lib/mysql \
-v /mydata/mysql/salve/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7.34
可以直接cd /mydata/mysql/master/conf 目录 然后再通过vim创建
Error 'Can't drop database 'mytestdb'; database doesn't exist' on query. Default database: 'mytestdb'. Query: 'DROP DATABASE `mytestdb`'
stop slave;
create database mytestdb;
start slave;