从 3 开始,在业务系统中增加分页功能
本次我们接着上三篇文章进行讲解《从0开始,用Go语言搭建一个简单的后端业务系统》、《从1开始,扩展Go语言后端业务系统的RPC功能》和《从2开始,在Go语言后端业务系统中引入缓存》:
这一节相对比较的简单,增加分页功能的实现利用了 gorm 的封装的方法并且同步更改了 Gin 的接收参数,进而实现了分页功能。
设计逻辑:
SQL 语法SELECT * FROM table LIMIT 10 OFFSET 5
,翻译过来就行从 5 开始取 10 条数据,OFFSET 可以理解成跳过这几行从后面开始取数据,LIMIT 就是取几行数据。
因此我们在 gorm 中就可以利用封装好的 API,如 Limit()和 Offset()等,但是需要两个参数,一个就是 page 代表第几页,另一个则是 limit 代表每页多少条数据,接下来写代码。
下面我们看下修改后的代码:
dao 层实现方法:
复制代码
controller 层接口:
复制代码
测试:
分页后的结果:
版权声明: 本文为 InfoQ 作者【Barry Yan】的原创文章。
原文链接:【http://xie.infoq.cn/article/48ea354ba08bf7af3d87f60b4】。文章转载请联系作者。
评论