博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Rest分页接口开发
阅读量:6837 次
发布时间:2019-06-26

本文共 3225 字,大约阅读时间需要 10 分钟。

简单描述:需求说后端写一个XX数据的分页接口,给前端口调用,其实有一个PageHelper的工具类可以直接使用但是老大不让用,得用sql写,。小Kiss啦。直接上代码

代码:

//Controller代码 import com.github.pagehelper.PageInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; @Api(value = "CourseController",tags = "课程查询") @RestController @RequestMapping("/client/course") public class CourseController extends BaseController {
@Autowired private CourseService courseService; @ApiOperation(value = "获取分页列表") @RequestMapping(value = "/queryPage", method = RequestMethod.GET, produces = "application/json;charset=utf-8") public ResultDto queryPage(Integer page,Integer rows,String categoryId){
PageInfo
pageInfo = new PageInfo
(); try {
pageInfo = courseService.queryPage(page,rows); if(pageInfo.getList().size()< 0){
return ResultDto.success("返回结果无内容"); } } catch (Exception e) {
e.printStackTrace(); return ResultDto.error(); } return ResultDto.success(pageInfo); } } 

 

//Service代码 import com.github.pagehelper.PageInfo; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.HashMap; import java.util.List; import java.util.Map; @Service public class CourseService {
@Resource private CourseMapper courseMapper; public PageInfo
queryPage(Integer page,Integer rows)throws Exception{
Map
param = new HashMap
(); Integer firstIndex = (page - 1) * rows; Integer lastIndex = page * rows; // 从第几条数据开始 int firstIndex = (currPage - 1) * pageSize; // 到第几条数据结束 int lastIndex = currPage * pageSize; param.put("page",firstIndex); param.put("rows",lastIndex); List
reList = courseMapper.findByPage(param); // 取分页信息 PageInfo
pageInfo = new PageInfo
(reList); return pageInfo; } } 

 

//Mapper接口 import com.xx.xxx.xxxx.util.MyMapper; import java.util.List; import java.util.Map; public interface CourseMapper extends MyMapper
{
List
findByPage(Map
param); }  //Mapper.xml中的sql
 
  ``````  

That's all !!!   下边来说一说PageHelper的方式

//仅仅是调用就OJBK啦 不过这种查询方式使用的是mybatis的example动态生成sql查询的,不需要你写mapper.xml中的sql了,只需要在对应的类上加上注解 public PageInfo
queryPage(Integer page,Integer rows)throws Exception{
Example example = new Example(CourseVo.class); example.createCriteria().andEqualTo("isDel", 1); PageHelper.startPage(page, rows); List
list = courseMapper.selectByExample(example);//查询 return pageInfo; } 

 

转载于:https://www.cnblogs.com/xuchao0506/p/10299453.html

你可能感兴趣的文章
运维经验分享(六)-- 深究crontab不能正确执行Shell脚本的问题(二)
查看>>
利用Linux的文件命名规范在Windows中建立“高权限”文件
查看>>
失败者的共同特点
查看>>
Tokyo Tyrant基本规范(4)--协议
查看>>
【Go语言】【14】GO语言的接口类型
查看>>
配置CAS应用客户端
查看>>
摘抄--apache工作模式详解
查看>>
更改sybase下设备名
查看>>
不少朋友在安装IDES 4.71的过程中都遇到了下面的出错提示:
查看>>
企业的人性和狼性
查看>>
mySQL教程 第10章 事务和锁
查看>>
Hello, Kafka World
查看>>
Exchange 2010和Exchange 2016共存部署-10:配置多域名证书
查看>>
SFB 项目经验-03-共存迁移-Lync 2013-TO-SFB 2015-完成
查看>>
F5 配置手册 -F5 BIG-IP 10.1-2-配置-基本参数
查看>>
《统一沟通-微软-实战》-6-部署-2-中介服务器-1-定义中介服务器
查看>>
虚拟化,可实现国产化替代
查看>>
PowerShell通过安全组创建计算机账号
查看>>
Linux LVM逻辑卷配置过程详解(创建,增加,减少,删除,卸载)
查看>>
《兵临城下》:360输在“斯大林格勒”?
查看>>