后台登陆功能开发
-
需求分析
-
代码开发
-
功能测试
后台退出功能开发
-
需求分析
-
代码开发
-
功能测试
完善后台登陆功能
当用户没登陆时先登录
使用过滤器/拦截器
过滤器
- 如何创建过滤器
- 先创建一个类
- 加上注解@WebFilter(filtername=" 这个和类名一样就行",urlPatterns=“/*”)
- 实现接口 Filter
- 重写方法 一般写 doFilter 方法就可以
- 在启动类上再加一个注解 @ServletComponentScan
实现逻辑
新增员工
员工信息分页查询
- 如何配置MybatisPlus的分页插件?
@Configuration public class MybatisPlusConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor(){ MybatisPlusInterceptor mpi = new MybatisPlusInterceptor(); mpi.addInnerInterceptor(new PaginationInnerInterceptor()); return mpi; } }
@GetMapping("/page") public R<Page> page(int page,int pageSize,String name){ log.info("page= {}, pageSize= {}, name= {}",page,pageSize,name); //构造分页构造器 Page pageinfo= new Page(page,pageSize); //构造条件构造器 LambdaQueryWrapper<Employee> lqw=new LambdaQueryWrapper(); lqw.like(StringUtils.isNotEmpty(name),Employee::getName,name); //添加排序条件 按更新时间 lqw.orderByAsc(Employee::getUpdateTime); //执行查询 employeeService.page(pageinfo,lqw); return R.success(pageinfo); }
启用禁用员工账号
- Js对Long型数据处理时丢失精度,导致提交的id和数据库中的id不一致
- 解决方法
- 我们再给服务器响应Json数据时,统一将Long型数据转换为字符串数据进行处理
编辑员工信息
- 回显员工信息
@GetMapping("/{id}") public R<Employee> edit(@PathVariable Long id){ log.info("根据id查询员工信息"); Employee emp = employeeService.getById(id); if(emp!=null){ return R.success(emp); } return R.error("编辑失败"); }
- 有个小细节: @GetMapping(“/{id}”)
- 这个"/{id}" 前面不要误加 "/${id}"不要搞混了