拖延了两天,中间有些别的需求在写,而且也遇到了点坎坷。
本章主要完善上一章一些业务的剩余瑕疵,查询时避免不了数据分页的功能,还有业务的返回格式统一,例如code、msg等信息的统一(实际根据公司要求和内部业务的风格定义,不要求一致,没有最好的程序,只有最适合的),废话不多说,开始!
说明:项目还是在上一章的工程中继续开展的
1.封装返回数据类:
首先封装一个数据返回枚举项,准备后续异常信息定义都在这里进行
返回数据组装接口定义,包含返回成功、错误,这个类是在网上搜的一个小伙伴的成功,也加深了对泛型的理解
返回数据调用示意
这样完成了数据返回的格式统一,便于前端接口调用。
2.分页插件,使用了pagehelper,有的小伙伴的artifactId使用的是不一致导致分页失效,也需要大家仔细对比一下
maven的配置
<!--分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
在service中进行调用插件
说明:
1.调用时传递当前页数、每页显示条数,目前问题存在参数传递没有默认值处理的问题。
2.mapper继承的基类mapper,没有使用基类的分页是因为他是进行内存分页,比较耗时,而pagehelper是进行物理分页。
我也进行了JPA的分页,不过JPA分页的分页有些特殊,第一页的开始值是0,仅展示service实例了,代码如下
总结一下:
1.本次分页是必传的,属于可以优化为不传递应用默认值的相关处理
2.对于不传参数抛出异常应该有全局异常捕获的的功能,暂时做了一些但是不够完美,下章准备优化一下。
下一章准备整理:
1.分页参数默认值优化
2.全局配置处理
3.查询条件筛选(列表形式)
4.完整的jdbc小demo(迟迟没有做完整体流程,因为目前在做的过程中发现还有很多东西需要学习,加油吧)。