MyBatisplus使用IPage和Page分页 Springboot中MyBatisplus使用IPage和Page分页的实例代码

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

MyBatisplus使用IPage和Page分页 Springboot中MyBatisplus使用IPage和Page分页的实例代码

super_.   2021-01-15 我要评论

一、需求:实现Springboot中MyBatisplus使用IPage和Page分页

二、技术:MyBatisplus的IPage和Page

三、实现

1、代码结构

2、代码详情

(1)Controller

package com.xkcoding.rbac.security.controller;
 
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xkcoding.rbac.security.service.InterService;
 
@Slf4j
@RestController
@RequestMapping("/inter")
public class InterController {
	@Autowired
	private InterService interService;
 
	@GetMapping("/test")
	public IPage<Map> test() {
		Integer currentPage = 1; //当前页数:显示第一页数据
		Integer pageSize = 2;  //每页显示多少:每页显示2条数据
		Page<Map> page = new Page<Map>(currentPage, pageSize);
		IPage<Map> findList = interService.findlistpage(page);
		return findList;
	}
}

(2)Service

package com.xkcoding.rbac.security.service;
 
import java.util.Map;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xkcoding.rbac.security.dao.InterDao;
import org.springframework.beans.factory.annotation.Autowired;
import lombok.extern.slf4j.Slf4j;
 
@Slf4j
@Service
public class InterService {
	@Autowired
	private InterDao interDao;
 
	public IPage<Map> findlistpage(Page<Map> page) {
		return interDao.selectMapsPage(page, null);
	}
}

(3)Dao

package com.xkcoding.rbac.security.dao;
 
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xkcoding.rbac.security.entity.Permission;
 
public interface InterDao extends BaseMapper<Permission> {
	IPage<Map> selectMapsPage(Page<Map> page, QueryWrapper<List<Map<String, Object>>> wrapper);
}

(4)XML

<?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.xkcoding.rbac.security.dao.InterDao">
 
	<select id="selectMapsPage" resultType="java.util.Map" parameterType="java.util.Map">
		SELECT * FROM INTER_COLLECTION
	</select>
	
</mapper>

(5)实体类

package com.xkcoding.rbac.security.entity;
 
import lombok.Data;
 
@Data
public class Inter {
  private String id;
 
  private String interName;
  
  private String mode;
 
  private String selectStatement;
 
  private String insertStatement;
  
  private String updateStatement;
 
  private String interEnable;
 
  private String interParam;
 
  private String interType;
  
  private String tableName;
}

3、运行结果

以上用到的 lombok 注解:

@Data:注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Slf4j:注解在类上;为类提供一个 属性名为log 的 log4j 日志对象

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们