瑞吉外卖-新增员工

一、新增员工:提交表单页面的数据

瑞吉外卖-新增员工_第1张图片
瑞吉外卖-新增员工_第2张图片
瑞吉外卖-新增员工_第3张图片

新增员工时出现的错误,异常:当提交的表单用户名在数据库中已经存在了,而且用户名字段加了唯一性约束,导致表单提交失败,这个异常是从数据库层面抛出来的,所以就需要对这个异常进行处理,编写全局异常处理器。

第一种处理方法:直接对程序进行异常捕获

瑞吉外卖-新增员工_第4张图片

第二种处理方法:基于全局的异常处理,@ExceptionHandler里面的就是异常类,只要遇到了这个异常,就会进入这个方法,对controller进行拦截

瑞吉外卖-新增员工_第5张图片
瑞吉外卖-新增员工_第6张图片

二、员工分页查询

瑞吉外卖-新增员工_第7张图片

使用的是mybatis-plus里面的分页插件,首先需要对这个分页插件进行一个配置(配置类),然后直接使用Page类,来传递参数,相当于给SQL后面加了一个limit。

瑞吉外卖-新增员工_第8张图片
瑞吉外卖-新增员工_第9张图片
瑞吉外卖-新增员工_第10张图片

三、启用和禁用员工账号:本质上来说就是一个更新操作,把status改为0

瑞吉外卖-新增员工_第11张图片
瑞吉外卖-新增员工_第12张图片

瑞吉外卖-新增员工_第13张图片
瑞吉外卖-新增员工_第14张图片

经典的问题:js只能保证前16位的精度,后面的会做一个四舍五入,而用户表里面的id都是19位(雪花算法是64位),就会导致精度丢失查找不到数据,导致更新不成功。

瑞吉外卖-新增员工_第15张图片

解决的办法,将Long类型的数据,转换为string字符串数据

瑞吉外卖-新增员工_第16张图片

用Jackson将java对象转成json的时候,对long类型的数据转化为string类型即可(映射),其中具体的对象映射器JacksonObjectMapper是自己编写的。把这个转换器设置为第一个转换器,也就是下面的下标0,即可。

瑞吉外卖-新增员工_第17张图片

三、编辑员工信息

瑞吉外卖-新增员工_第18张图片

先根据id获取对象信息

瑞吉外卖-新增员工_第19张图片

修改的信息使用的是上面通用的updata方法。

瑞吉外卖-新增员工_第20张图片

你可能感兴趣的:(java,mybatis,java,mysql)