1.POM文件
<dependency>  <groupId>com.github.pagehelper</groupId>  <artifactId>pagehelper</artifactId>  <version>4.1.1</version>
</dependency>
2.写配置类
import java.util.Properties;import javax.sql.DataSource;import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import org.springframework.transaction.annotation.TransactionManagementConfigurer;import com.github.pagehelper.PageHelper;@Configuration
@EnableTransactionManagement
public class MybatisConfig implements TransactionManagementConfigurer {@AutowiredDataSource dataSource;@Bean(name = "sqlSessionFactory")public SqlSessionFactory sqlSessionFactoryBean() {SqlSessionFactoryBean bean = new SqlSessionFactoryBean();bean.setDataSource(dataSource);PageHelper pageHelper = new PageHelper();Properties props = new Properties();//分页参数合理化,个人建议用默认的falseprops.setProperty("reasonable", "true");props.setProperty("supportMethodsArguments", "true");props.setProperty("returnPageInfo", "check");props.setProperty("params", "count=countSql");pageHelper.setProperties(props);bean.setPlugins(new Interceptor[] { pageHelper });//如果spring boot的sql语句是在xml里,则需要加下面两行代码PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();bean.setMapperLocations(resolver.getResources("classpath:com/xx/xx/xx/*.xml"));//两行代码结束,请注意,如果此处加这两行代码,那么application.properties文件中不要再配置mybatis相关配置了,比如setMapperLocations这些属性什么的,此处不加这两行代码,才需要在properties文件中配置try {return bean.getObject();} catch (Exception e) {e.printStackTrace();}return null;}@Beanpublic SqlSessionTemplate sqlSessionTemplate(SqlSessionFactory sqlSessionFactory) {return new SqlSessionTemplate(sqlSessionFactory);}@Bean@Overridepublic PlatformTransactionManager annotationDrivenTransactionManager() {return new DataSourceTransactionManager(dataSource);}
}
3.Controller中写法
@ResponseBody@PostMapping("/list")public List<Entity> getLastData() {//调用startPage方法//注意第一个参数,不能是0,否则无法查到数据PageHelper.startPage(1, 5, true, false);//表示当前第1页,每页五条,假如一共11页,那么超过11页,数据则显示空PageHelper.startPage(1, 5);//表示当前第1页,每页五条,假如一共11页,那么超过11页,数据则显还是第11页//这里直接写查询方法即可,别的不需要管List<Entity> datas = mapper.findLastData(userId);//查询完毕之后Page<Entity> pageMsg = (Page<Entity>) datas;//如果不额外配置上面的mybatisConfig类,下面写法也可以PageInfo<Entity> pageMsg = new PageInfo<>(datas);//到此,pageMsg上述两种都可以的pageMsg.getTotal();pageMsg.getPages();pageMsg.getPageSize();return datas;}

Mybatis-Pagehelper相关推荐

  1. mybatis 分页查询_MyBatis之分页查询:MyBatis PageHelper

    MyBatis,作为目前流行的ORM框架,大大方便了日常开发.而对于分页查询,虽然可以通过SQL的limit语句实现,但是比较繁琐.而MyBatis PageHelper的出现,则解决了这一痛点.这里 ...

  2. Springboot+Mybatis+PageHelper 分页、排序

    Springboot+Mybatis+PageHelper 分页.排序 升序 asc.降序 desc <!-- 继承 spring boot 父包--><parent>< ...

  3. mybatis pagehelper实现分页

    jar包的版本一定要对应,不然会出现一系列的问题 下载jar包 <properties>           <!-- spring版本号 -->           < ...

  4. java mvc 分页查询条件_java分页条件查询-GridManager.js表格插件+Pageable分页对象+mybatis pagehelper分页插件...

    总览: 一. GridManager.js表格插件 直接上插件API:链接地址 感觉该插件简单好用,插件作者也是有问必答,nice 二. 添加依赖 后端: pom文件添加: 1.7.0.RELEASE ...

  5. MyBatis+PageHelper实现分页

    PageHelper是一个运行在MyBatis基础之上的API库,用于简单地实现对表中数据进行分页查询. 1.数据 CREATE TABLE `student` (`id` char(36) PRIM ...

  6. 初学MyBatis PageHelper.startPage(m,n)报错,自动添加limit

    问题描述 初学MyBatis,使用分页插件的时候,输入PageHelper.startPage(m,n)会报如下错误,导致报红不分页 org.apache.ibatis.exceptions.Pers ...

  7. springboot+vue+thymeleaf+mybatis+pageHelper创建项目

    一.创建sprintboot新项目 1.点击File->new->object选择Sping Initializr点击Next输入项目信息 2.在依赖选择界面选择所需要的依赖,点击next ...

  8. mybatis+pageHelper实现1多对查询,查询条件一方和多方都有

    问题 pageHelper的原理是默认执行分页中对应数量条数的sql,所以在mybatis的1对多查询中,如果直接书写,会查询出少于你主表条数的结果,产生问题,并且有些查询条件需要集成在多表这一方,, ...

  9. Springboot 系列(十二)使用 Mybatis 集成 pagehelper 分页插件和 mapper 插件

    前言 在 Springboot 系列文章第十一篇里(使用 Mybatis(自动生成插件) 访问数据库),实验了 Springboot 结合 Mybatis 以及 Mybatis-generator 生 ...

  10. 都是MyBatis分页工具PageHelper惹的祸 —— 记一次加入GROUP BY分组查询成功,不分组则失败的奇怪现象Debug过程

    项目技术框架 请您打开世界上最好使的Java编译器IntelliJ IDEA,建一个SpringBoot项目,保证项目中包含以下依赖: 后端框架:SpringBoot + JUnit 数据库持久化:M ...

最新文章

  1. Simulink仿真---PMSM滞环电流控制仿真模型学习
  2. SqlServer中存储过程中将Exec的执行结果赋值给变量输出
  3. ack机制之代码实现,实现BaseRichBolt的方式,使用BaseBasicBolt的方式实现BaseRichBolt发ack和fail的功能
  4. Masonry 原理与使用说明
  5. 腾讯和阿里在B站“打起来了”,你何时见过这场面?
  6. N^N最左边和最右边的数(数学)
  7. 【洛谷】P3919 【模板】可持久化线段树(主席树)
  8. ruby 连接mysql数据库
  9. ejb 2.0 3.0_Java EE 6测试第I部分– EJB 3.1可嵌入API
  10. Docker容器硬盘热扩容-centos6
  11. shell例题3-百度面试题
  12. 中国双轴取向(BO)膜行业市场供需与战略研究报告
  13. matplotlib 可视化 —— cmap(colormap)
  14. [转载] 用Python进行简单的文本相似度分析
  15. 任务调度的合理性(拓扑排序)
  16. SEO优化:站群的操作方法有哪些,网站集群系统是什么?
  17. javascript 验证 国际格式 电话号码
  18. PHP 对银行卡,手机号,真实姓名,身份证进行掩码加星号处理
  19. 大疆图像算法面试流程
  20. 最新技术栈Vue3+TS基于唯杰地图开发的CAD云端图纸管理平台案例代码开源了

热门文章

  1. 项目管理(把与某点相邻边分为两类 是复杂度降为(n^(3/2))
  2. 大学计算机学情分析,大学生学情分析
  3. git的历史版本拉分支、回撤revert、回退reset
  4. 笔记本电脑内网、外网一起使用
  5. 装完机,启grub+Linux,linux一路填坑...
  6. mysql8日志文件密码_mysql8 参考手册--mysqlbinlog-处理二进制日志文件的实用程序
  7. mysql 游标_跟我快速学数据存储:MySQL
  8. 如何优雅的在java中统计代码块耗时
  9. Mybatis Plus 的BaseMapper 和 Model有什么用
  10. Android开发笔记(四十八)Thread类实现多线程