苍穹外卖---员工分页查询(P20-P2)

一、需求分析和设计

(1)产品原型

系统中的员工很多的时候,如果在一个页面中全部展示出来会显得比较乱,不便于查看,所以一般的系统中都会以分页的方式来展示列表数据。而在我们的分页查询页面中, 除了分页条件以外,还有一个查询条件 "员工姓名"。

查询员工原型:

业务规则:

根据页码展示员工信息

每页展示10条数据

分页查询时可以根据需要,输入员工姓名进行查询

(2)接口设计

找到资料-->项目接口文档-->苍穹外卖-管理端接口.html

注意事项:

  • 请求参数类型为Query不是json格式提交,在路径后直接拼接。/admin/employee/page?name=zhangsan

  • 返回数据中records数组中使用Employee实体类对属性进行封装。

二、代码开发

(1)设计DTO类

根据分页查询接口设计对应的DTO:

根据请求参数进行封装,在sky-pojo模块中

(2)封装PageResult

后面所有的分页查询,统一都封装为PageResult对象。

在sky-common模块

员工信息分页查询后端返回的对象类型为: Result<PageResult>

(3)Controller层

在sky-server模块中,com.sky.controller.admin.EmployeeController中添加分页查询方法。

(4)Service层接口

在EmployeeService接口中声明pageQuery方法:

(5)Service层实现类

在EmployeeServiceImpl中实现pageQuery方法:

注意:此处使用 mybatis 的分页插件 PageHelper 来简化分页代码的开发。底层基于 mybatis 的拦截器实现。

故在pom.xml文中添加依赖(初始工程已添加)

(6)Mapper层

在 EmployeeMapper 中声明 pageQuery 方法:

在 src/main/resources/mapper/EmployeeMapper.xml 中编写SQL:

三、功能测试

可以通过接口文档进行测试,也可以进行前后端联调测试。

接下来使用两种方式分别测试:

(1)接口文档测试

重启服务:访问http://localhost:8080/doc.html,进入员工分页查询

如果token失效,需要重新获取

响应结果:

(2)前后端联调测试

点击员工管理

输入员工姓名为小红,进行查询:

 

四、代码完善

问题描述:操作时间字段显示有问题。

解决方式:

1). 方式一

在属性上加上注解,对日期进行格式化

2). 方式二(推荐 ) 

在WebMvcConfiguration中扩展SpringMVC的消息转换器,统一对日期类型进行格式处理

再次测试

 

五、代码提交

  • 26
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值