企业网站设计目的和意义,网站怎么做友情链接,企业微信app下载安装官方版,新闻静态网站咋做文章目录 每页10条记录#xff0c;取第一页#xff0c;返回的是前10条记录每页10条记录#xff0c;取第二页#xff0c;返回的是第11条记录#xff0c;到第20条记录#xff0c; MySQL对分页的支持 简单来说MySQL对分页的支持是通过limit子句。请看下面的例子。
limit关键… 文章目录 每页10条记录取第一页返回的是前10条记录每页10条记录取第二页返回的是第11条记录到第20条记录 MySQL对分页的支持 简单来说MySQL对分页的支持是通过limit子句。请看下面的例子。
limit关键字的用法是 LIMIT [offset,] rows offset是相对于首行的偏移量(首行是0)rows是返回条数。
每页10条记录取第一页返回的是前10条记录
select * from tableA limit 0,10;每页10条记录取第二页返回的是第11条记录到第20条记录
select * from tableA limit 10,10;这里提一嘴的是MySQL在处理分页的时候是这样的
limit 1000,10 - 过滤出1010条数据然后丢弃前1000条保留10条。当偏移量大的时候性能会有所下降。
limit 100000,10 - 会过滤10w10条数据然后丢弃前10w条。如果在分页中发现了性能问题可以根据这个思路调优。
mybatis的工作原理图 先介绍一下mybatis中的插件是如何工作的主要作用在哪个环节。mybatis的工作原理图 从图中可以看出mybatis中首先要在配置文件中配置一些东西然后根据这些配置去创建一个会话工厂再根据会话工厂创建会话会话发出操作数据库的sql语句然后通过执行器操作数据再使用mappedStatement对数据进行封装这就是整个mybatis框架的执行情况。那么mybatis的插件作用在哪一环节呢插件主要作用在Executor执行器与mappedeStatement之间也就是说mybatis可以在插件中获得要执行的sql语句在sql语句中添加limit语句然后再去对sql进行封装从而可以实现分页处理。 搞清楚了分页插件的执行情况下面来总结下mybatis中PageHelper的使用。引入PageHelper
pom.xml加入
dependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper-spring-boot-starter/artifactIdversion1.2.12/version
/dependency4、在执行sql前添加插件完成分页功能 在查询的sql语句执行之前添加一行代码PageHelper.startPage(1, 10);第一个参数表示第几页第二个参数表示每页显示的记录数。这样在执行sql后就会将记录按照语句中设置的那样进行分页。如果需要获取总记录数的话需要PageInfo类的对象这个对象可以获取总记录数。 PageHelper.startPage(page, rows) 相当于是将limit封装了一层用着更加简单。后续写mapper.xml的sql语句就不需要写limit 了
//获取第1页10条内容默认查询总数count
PageHelper.startPage(1, 10);
ListCountry list countryMapper.selectAll();