springboot+mybatis的pageInfo分页的参数含义

//当前页
private int pageNum;
//每页的数量
private int pageSize;
//当前页的数量
private int size;
//总页数
private int pages;
//第一页
private int firstPage;
//上一页
private int prePage;
//下一页
private int nextPage;
//总记录数
private long total;

//由于startRow和endRow不常用,这里说个具体的用法
//可以在页面中"显示startRow到endRow 共size条数据"
//当前页面第一个元素在数据库中的行号
private int startRow;
//当前页面最后一个元素在数据库中的行号
private int endRow;

//结果集
private List<T> list;
 
//是否为第一页
private boolean isFirstPage = false;
//是否为最后一页
private boolean isLastPage = false;
//是否有前一页
private boolean hasPreviousPage = false;
//是否有下一页
private boolean hasNextPage = false;
//导航页码数
private int navigatePages;
//所有导航页号
private int[] navigatepageNums;
//导航条上的第一页
private int navigateFirstPage;
//导航条上的最后一页
private int navigateLastPage;

创建相关表

/*
 Navicat Premium Data Transfer

 Source Server         : lc
 Source Server Type    : MySQL
 Source Server Version : 80016
 Source Host           : rm-uf6k821nmo8j76x81to.mysql.rds.aliyuncs.com:3306
 Source Schema         : dev_yx_urban

 Target Server Type    : MySQL
 Target Server Version : 80016
 File Encoding         : 65001

 Date: 15/09/2020 17:35:50
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for lc_proposer
-- ----------------------------
DROP TABLE IF EXISTS `lc_proposer`;
CREATE TABLE `lc_proposer`  (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `real_name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '姓名',
  `id_card` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '身份证',
  `phonenumber` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '手机号',
  `PASSWORD` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '密码',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 19 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '申请人' ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of lc_proposer
-- ----------------------------
INSERT INTO `lc_proposer` VALUES (1, '1', '1', '1', '1');
INSERT INTO `lc_proposer` VALUES (7, '12', '321081199011111111', '13655555555', '123456');

SET FOREIGN_KEY_CHECKS = 1;

一、引入相关jar包

	
	<dependency>
			<groupId>com.github.pagehelpergroupId>
			<artifactId>pagehelperartifactId>
			<version>5.1.2version>
		dependency>
		<dependency>
			<groupId>com.github.pagehelpergroupId>
			<artifactId>pagehelper-spring-boot-starterartifactId>
			<version>1.2.12version>
		dependency>

二、相关实体类

package com.lcwing.modules.urban.entity;

import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import java.io.Serializable;
import java.util.Date;

/**
 * 申请人
 * 
 * @author chenshun
 * @email [email protected]
 * @date 2020-08-25 10:40:44
 */
@TableName("lc_proposer")
public class LcProposerEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 主键
	 */
	@TableId
	private Long id;
	/**
	 * 姓名
	 */
	private String realName;
	/**
	 * 身份证
	 */
	private String idCard;
	/**
	 * 手机号
	 */
	private String phonenumber;
	/**
	 * 密码
	 */
	private String password;


	/**
	 * 设置:主键
	 */
	public void setId(Long id) {
		this.id = id;
	}
	/**
	 * 获取:主键
	 */
	public Long getId() {
		return id;
	}
	/**
	 * 设置:姓名
	 */
	public void setRealName(String realName) {
		this.realName = realName;
	}
	/**
	 * 获取:姓名
	 */
	public String getRealName() {
		return realName;
	}
	/**
	 * 设置:身份证
	 */
	public void setIdCard(String idCard) {
		this.idCard = idCard;
	}
	/**
	 * 获取:身份证
	 */
	public String getIdCard() {
		return idCard;
	}
	/**
	 * 设置:手机号
	 */
	public void setPhonenumber(String phonenumber) {
		this.phonenumber = phonenumber;
	}
	/**
	 * 获取:手机号
	 */
	public String getPhonenumber() {
		return phonenumber;
	}
	/**
	 * 设置:密码
	 */
	public void setPassword(String password) {
		this.password = password;
	}
	/**
	 * 获取:密码
	 */
	public String getPassword() {
		return password;
	}

	@Override
	public String toString() {
		return "LcProposerEntity{" +
				"id=" + id +
				", realName='" + realName + '\'' +
				", idCard='" + idCard + '\'' +
				", phonenumber='" + phonenumber + '\'' +
				", password='" + password + '\'' +
				'}';
	}
}

controller层

/**
	* 需要引入的jar包。import com.github.pagehelper.PageInfo;
	* 需要引入的公共的返回的类:import com.lcwing.common.utils.R;
     * 列表
     */
    @RequestMapping("/list")
    public R list(
            @ApiParam(name = "每页记录数", value = "pageSize", required = true) @RequestParam(defaultValue = "10") Integer pageSize,
            @ApiParam(name = "当前页", value = "pageNum", required = true) @RequestParam(defaultValue = "1") Integer pageNum
    ){
        PageInfo<LcProposerEntity> LcProposerEntityList = proposerService.selectProposerAllList(pageSize, pageNum);
        return R.ok().put("page",LcProposerEntityList);
    }

service 层


 /**
 * 需要引入的分页jar包:import com.github.pagehelper.PageHelper;
						import com.github.pagehelper.PageInfo;
     * 列表
     */
    @Override
    public PageInfo<LcProposerEntity> selectProposerAllList(Integer pageSize, Integer pageNum) {
        PageHelper.startPage(pageNum,pageSize);//page分页插件

        List<LcProposerEntity> LcProposerEntitys = baseMapper.selectProposerAllList();//根据搜索条件搜索到的所有的数据

        PageInfo<LcProposerEntity> pageInfo=new PageInfo<>(LcProposerEntitys);//创建pageInfo分页参数进行分页

        return pageInfo;
    }

DAO层

/**
     * 搜索到的所有的申请人的数据
     * @return
     */
    List<LcProposerEntity> selectProposerAllList();

XML的sql


	<select id="selectProposerAllList" resultMap="lcProposerMap">
		select * from lc_proposer
	select>

公共的返回类

/**
 * Copyright 2018 人人开源 http://www.renren.io
 * 

* Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at *

* http://www.apache.org/licenses/LICENSE-2.0 *

* Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.lcwing.common.utils; import java.util.HashMap; import java.util.Map; /** * 返回数据 * * @author chenshun * @email [email protected] * @date 2016年10月27日 下午9:59:27 */ public class R extends HashMap<String, Object> { private static final long serialVersionUID = 1L; public R() { put("code", 0); put("msg", "success"); } public static R error() { return error(500, "未知异常,请联系管理员"); } public static R error(String msg) { return error(500, msg); } public static R error(int code, String msg) { R r = new R(); r.put("code", code); r.put("msg", msg); return r; } public static R ok(String msg) { R r = new R(); r.put("msg", msg); return r; } public static R ok(Map<String, Object> map) { R r = new R(); r.putAll(map); return r; } public static R ok() { return new R(); } @Override public R put(String key, Object value) { super.put(key, value); return this; } }

你可能感兴趣的:(java)