1.在pom文件中引入jar包
<!-- 分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
2.引入jar包后,修改 application.properties,加入分页插件的配置
#pagehelper
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
3.配置mapper.xml,查询所有的url对象
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zhangdi.sunflower.dao.UrlMapper">
<resultMap id="BaseResultMap" type="com.zhangdi.sunflower.domain.Url">
<result column="id" property="id" jdbcType="INTEGER"/>
<result column="urlName" property="urlName" jdbcType="VARCHAR"/>
<result column="urlAddress" property="urlAddress" jdbcType="VARCHAR"/>
<result column="type" property="type" jdbcType="VARCHAR"/>
<result column="isAble" property="isAble" jdbcType="VARCHAR"/>
<result column="remark" property="remark" jdbcType="VARCHAR"/>
</resultMap>
<select id="selectUrlList" resultMap="BaseResultMap" parameterType="string">
SELECT id,url_name urlName,url_address urlAddress,type,
CASE when
is_able = 1 THEN "显示"
else "不显示" end isAble , remark FROM url
</select>
</mapper>
4.controller方法,这里省略的Dao和Service,显示第二页 每页展示三条数据
package com.zhangdi.sunflower.controller;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zhangdi.sunflower.domain.Url;
import com.zhangdi.sunflower.service.UrlService;
@Controller
public class UrlController {
@Autowired
UrlService urlService;
@RequestMapping(value = "/pageUrlList")
@ResponseBody
public PageInfo<Url> pageUrlList( ){
//PageHelper.startPage(pageNum,pageSize);pageNum:当前页数 pageSize:当前页需要显示的数量
PageHelper.startPage(2, 3);
List<Url> personList = urlService.getUrlList();
//得到分页的结果对象
PageInfo<Url> personPageInfo = new PageInfo<>(personList);
//得到分页中的person条目对象
// List<Url> pageList = personPageInfo.getList();
//将结果存入map进行传送
return personPageInfo;
}
}
5.查询分页的结果