首页 > 其他分享 >自己写的mapper.xml如何使用mybatis-plus的自带分页?

自己写的mapper.xml如何使用mybatis-plus的自带分页?

时间:2023-12-28 23:35:28浏览次数:31  
标签:xml mapper 分页 查询 plus IPage Page condition

在MyBatis-Plus中,使用自带的分页功能非常简单。首先,确保你的mapper.xml文件中定义了需要的SQL语句,并在相应的mapper接口中使用IPage类型的参数进行分页。接下来,使用Page类来包装查询条件,并调用Mapper接口的分页方法。

首先,假设你的mapper.xml中有类似如下的查询语句:

<!-- 在mapper.xml中定义查询语句 -->
<select id="selectByCondition" resultType="YourResultType">
    SELECT * FROM your_table
    WHERE your_condition
</select>

然后,确保在相应的mapper接口中声明对应的方法,并使用IPage类型的参数进行分页:

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

public interface YourMapper extends BaseMapper<YourEntity> {

    IPage<YourResultType> selectByCondition(Page<YourResultType> page, @Param("yourCondition") YourCondition condition);

}

在上面的例子中,IPage<YourResultType>表示返回的结果是一个分页对象,Page<YourResultType>是分页查询的条件,YourCondition是你的查询条件对象,可以根据实际情况修改。

最后,在调用该方法时,创建一个Page对象并传递给查询方法:

Page<YourResultType> page = new Page<>(current, size); // current是当前页数,size是每页记录数
YourCondition condition = new YourCondition(); // 根据实际情况设置查询条件
IPage<YourResultType> resultPage = yourMapper.selectByCondition(page, condition);

List<YourResultType> resultList = resultPage.getRecords(); // 获取查询结果列表

这样,MyBatis-Plus就会自动进行分页查询,返回包含分页信息的IPage对象,其中包括总记录数、总页数等信息。

标签:xml,mapper,分页,查询,plus,IPage,Page,condition
From: https://blog.51cto.com/janeyork/9019134

相关文章

  • Mybatis-Plus 常用注解总结
    在框架的使用中,注解约定大于配置,我们可以轻松通过注解完成很多工作,比如字段改名映射,插入更新的时间写入等,下面的学习内容主要列举了常用的注解。我们看看官网中列出的注解有哪些[1]:本文的注解学习主要内容集中在以下的注解中:@TableName@TableId@TableField@EnumValue@Ver......
  • Java Spring Boot Mybatis-Plus 的简单使用
    此文主要基于官网case整理,如需了解更多详情,请移步官网。环境:SpringBoot:3.1.6JDK:17MySQL:5.7数据准备主要是MySQL建库建表,插入一些数据。建库:CREATEDATABASEmybatis_demo;建表:DROPTABLEIFEXISTS`user`;CREATETABLE`user`(idBIGINTNOTNULLCOMME......
  • D. Split Plus K
    原题链接什么时候无解?有解计算code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;lla[200005]={0};intmain(){llt;cin>>t;while(t--){lln,k;cin>>n>>k;llzs=0,fs=0;f......
  • [记]在rust中使用xml,xml的序列化与反序列化
    序在rust中有好几个xml库,但我个人比较推荐的是quick_xml库,这个库的序列化和反序列化使用体验比较好。启用quick_xml的featurequick-xml={version="0.31.0",features=["serde","serialize"]}serde={version="1.0",features=["derive"]}qucik_mxl的宏体验依......
  • OnePlus 6 体验 Mobian 折腾记录
    1.刷入Mobian解BL锁等操作在此不赘述。1.1.下载刷机包进入Mobian镜像下载页,找到SDM845,进入weekly目录,下载最新构建的刷机包;1.2.刷入系统①将手机重启至fastboot模式,连接到电脑;②解压,在电脑上打开终端,依次输入:fastbootflashboot解压出来的boot镜像的路......
  • 使用libxml2库修改XML文件内容
    /*//引入libxml2库头文件和相关函数库。#include<libxml/parser.h> ///usr/include/libxml2/libxml/parser.h#include<libxml/tree.h>#include<libxml/xmlmemory.h>*/staticvoidmodifyXml(Webs*wp){char*json_string=wp->input.servp;cJSON*cjson=......
  • 香橙派5plus从ssd启动Ubuntu
    官方接口图我实际会用到的就几个接口,背面的话就一个M.2固态的位置:其中WIFI模块的接口应该也可以插2230的固态,不过是pcie2.0的速度,背面的接口则是pcie3.0*4的速度,差距还是挺大的。开始安装系统准备工作一张内存卡(如果买的时候没有emmc的话)下载并安装balenaEtcher一个m.......
  • 2.3T NPU强势登场!NXP i.MX 8M Plus开启工业新篇章,14纳米!
            更多产品详情以及购买咨询可添加如下客服人员微信 (即刻添加,马上咨询) 更多i.MX8MPlus产品资料可长按二维码识别下载如需选购,请登录创龙科技天猫旗舰店:tronlong.tmall.com!欢迎加入i.MX8MPlus技术交流群:1064661665......
  • springboot项目Mapper注入失败:@org.springframework.beans.factory.annotation.Autowi
    同事发给我一个项目,说启动时,报mapper无法注入,让我帮忙排查一下问题记录一下我自己遇到这个问题的排查顺序首先先排除以下问题:1.mapper类是否加入到ioc容器中(有没有使用@Mapper标签),如果报错是service层,那就看看是不是没有添加server标签2.检查项目是否扫描mapper类所在......
  • XML
    XML概述XML指可扩展标记语言(eXtensibleMarkupLanguage)。XML被设计用来传输和存储数据,不用于表现和展示数据,HTML则用来表现数据。XML很重要,也很容易学习。XML简介XML被设计用来传输和存储数据。HTML被设计用来显示数据。XML指可扩展标记语言(eXtensibleMarkupLangua......