当前位置:首页 > 学习笔记 > 正文内容

MyBatis-写分页的几种方法,怎么写分页最简单

廖万里3年前 (2022-11-05)学习笔记77346

1、就是直接使用我们的SQL语句进行分页,也就是在Mapper里面加上分页的语句就好了。比如MySQL添加一个limit 2,4。这种方式弊端很大,比如我们不用MySQL了,所有的代码都要修改。


2、MyBatis中的分页的插件PageHelper,


3、自己手写分页框架。这种用的比较少,不是说写不出来,你写出来的性能可能没有开源的好,没有经过严格测试容易莫名出现问题。

综合考虑,使用MyBatis的分页插件PageHelper写最方便好用!


如何用MyBatis的分页插件PageHelper写分页:

1,复制jar包

分页jar包下载地址:PageHelper的jar包 - 万策云盘

MyBatis-写分页的几种方法,怎么写分页最简单编辑

 2,我用IDEA来做演示,将jar包导入到项目中。

MyBatis-写分页的几种方法,怎么写分页最简单编辑

 3,配置文件,去Mybatis总配置文件“mybatis-config.xml”中插入以下代码。

以下代码插入到 “实体类别名” 和 “数据库配置中间”,位置不能错!

<plugins>
   <!-- com.github.pagehelper为PageHelper类所在包名 -->
   <plugin interceptor="com.github.pagehelper.PageHelper">
      <!-- 方言 -->
      <property name="dialect" value="mysql"/>
      <!-- 该参数默认为false -->
      <!-- 设置为true时,使用RowBounds分页会进行count查询 -->
      <property name="rowBoundsWithCount" value="true"/>
   </plugin></plugins>

4, 根据自己的数据编写main方法进行测试即可。

//查询结果之前 分页  当前页(正常页码)   每页行数
 PageHelper.startPage(1,3);//分页
 List<News> list= nm.selectByExampleWithBLOBs(null);
 PageInfo<News> info=new PageInfo<>(list);//分页对象  pagebean
 System.out.println(info.getTotal());//共多少行
 System.out.println(info.getPages());//共多少页
 System.out.println(info.getPrePage());//上一页
 System.out.println(info.getNextPage());//下一页
 System.out.println(info.getPageNum());//当前页
 for (News n:info.getList()  //每页的数据
      ) {
     System.out.println(n.getNid()+"");
 }


博主来自:廖万里的博客


本文链接:https://www.kkkliao.cn/?id=238 转载需授权!

分享到:

版权声明:本文由廖万里的博客发布,如需转载请注明出处。


“MyBatis-写分页的几种方法,怎么写分页最简单” 的相关文章

Spring框架提供的多种属性注入方式

Spring框架提供的多种属性注入方式

1 set注入注入的成员变量必须要封装  set方法注入bean<!--成员变量对象--><!--<bean id="u" class="com.bdqn.User"></bean&g...

如何在程序中实现多进程,多进程概述

如何在程序中实现多进程,多进程概述

 多进程:在一个程序中实现多任务处理,可以使用多线程和多进程两种方式。多进程创建:使用Process、类,每次实例化这个类的时候,就创建一个进程对象。编辑 多进程:一个程序运行中,产生了多个进程。N个正在运行的程序----至少N个程序1个程序------可能只有一个进程/也可能有...

Python如何实现多线程,多线程概述

Python如何实现多线程,多线程概述

 线程:线程是CPU调度的基本单位,是进程中具体的执行单元。进程包含线程,一个进程中至少包含一个线程;如果一个进程中包含了多个线程,称为多线程。多线程的实现:编辑 1,引入threading模块。import threading import time2,编...

socket概述 python中如何使用TCP/UDP协议实现通信-教程

socket概述 python中如何使用TCP/UDP协议实现通信-教程

 很多编程语言中,都使用scoket套接字实现网络通信。Socket是对TCP/IP协议的封装,Socket本身就是一个调用接口(API),方便程序员用Socket使用TCP/IP协议簇,实现网络通信。不同编程语言,shiyongSocket通信的语法有所区别,但基本原理类型相似。它的两种...

CloudDriver一款将各种网盘云盘挂在到电脑本地变成本地磁盘的工具 教程

CloudDriver一款将各种网盘云盘挂在到电脑本地变成本地磁盘的工具 教程

平时我们的电脑可能由于大量的文件资料之类的导致存储空间可能不够,所以我们可以选择将网盘我们的本地磁盘用来存放东西。CloudDrive 是一款可以将 115、阿里云盘、天翼云盘、沃家云盘、WebDAV 挂载到电脑中,成为本地硬盘的工具,支持 Windows 与 Dock...

一款安卓/鸿蒙设备也能够轻松连接homepod的插件,跨平台音乐推流工具airmusic分享

一款安卓/鸿蒙设备也能够轻松连接homepod的插件,跨平台音乐推流工具airmusic分享

编辑点评:支持多种音频传输的方案,最为重要的就是支持AirPlay设备支持多种上音频传输方式的一款神器,AirMusic安卓免费版,是个解锁了高级功能的版本,软件需要root权限,可以将音频内容以满足自己需求的方式来推送到你所需要的音响当中,让你的安卓设备也能够轻松的享受到各种不同的音响的内容。操作...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。