spring boot 和 mybatis 中使用 pagehelper:

1、 在pom.xml 中加入pagehelper的引用:

    <dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.0.4</version>
</dependency>   <dependency>
   <groupId>com.github.pagehelper</groupId>
  <artifactId>pagehelper-spring-boot-starter</artifactId>
  <version>1.2.11</version>
  </dependency>

2. 在 application.properties 文件中增加:

pagehelper.offsetAsPageNum=true
pagehelper.rowBoundsWithCount=true
pagehelper.pageSizeZero=true
pagehelper.reasonable=false
pagehelper.params=pageNum=pageHelperStart;pageSize=pageHelperRows;
pagehelper.supportMethodsArguments=false

在 application.properties 中增加以下的语句,打开 com.example.boot2.mapper 包下的日志, 该包下的 sql 语句都可以在控制台输出。

logging.level.com.example.boot2.mapper=debug

3. Controller 文件:

  @Autowired
  private UserService userService;

 @RequestMapping(method = RequestMethod.GET, value = "/selectPage/{pageNum}/{pageSize}")
public PageInfo<User> selectPage(@PathVariable("pageNum") int pageNum, @PathVariable("pageSize") int pageSize) { PageInfo<User> page = userService.selectPage(pageNum, pageSize);
System.out.println(page.getPageSize());
return page;
}

4. UserService 接口:

public PageInfo<User> selectPage(int pageNum, int pageSize);

5. UserServiceImpl 实现类:

    @Autowired
private UserMapper userMapper; public PageInfo<User> selectPage(int pageNum, int pageSize) {
// 将参数传给这个方法就可以实现物理分页了,非常简单。
PageHelper.startPage(pageNum, pageSize);
List<User> list = userMapper.selectAll();
System.out.println(list.size());
PageInfo page = new PageInfo(list);
return page;
}

在 查询语句  userMapper.selectAll(); 前面加上:  PageHelper.startPage(pageNum, pageSize);  则后面的查询语句即被加上了分页的功能。

6. UserMapper 接口: List<User> selectAll();

7. UserMapper.xml  文件:

  <select id="selectAll" resultMap="BaseResultMap" >
select
<include refid="Base_Column_List" />
from se_user
</select>

浏览器中访问:http://localhost:8080/user/selectPage/5/3

日志如下:

2019-06-03 17:43:24.713 DEBUG 30808 --- [nio-8080-exec-5] c.e.b.mapper.UserMapper.selectAll_COUNT  : ==>  Preparing: SELECT count(0) FROM se_user
2019-06-03 17:43:24.713 DEBUG 30808 --- [nio-8080-exec-5] c.e.b.mapper.UserMapper.selectAll_COUNT : ==> Parameters:
2019-06-03 17:43:24.783 DEBUG 30808 --- [nio-8080-exec-5] c.e.b.mapper.UserMapper.selectAll_COUNT : <== Total: 1
2019-06-03 17:43:24.783 DEBUG 30808 --- [nio-8080-exec-5] c.e.boot2.mapper.UserMapper.selectAll : ==> Preparing: select sid, user_num, user_real_name, user_nick_name, user_id_code,
user_address, user_head_pic, user_self_head_pic, user_id_code_front_pic, user_id_code_back_pic, user_approve_status, user_create_date, user_longitude, user_latitude, user_frequent_address,
user_service_num, user_speciality, user_balance, user_service_status, user_apply_datetime, user_service_city, user_company, user_age, user_sex, user_refusal_reason, user_collection_num, user_mcount,
user_telephone, user_approved_datetime, user_is_star, user_invite_no, two_dimension_code, used_capacity, max_capacity, friend_background, click_num, is_discount, user_role, is_use, user_stock_num, is_agent,
member_point, member_glory, member_level, frozen_money, agent_create_time, business_code, user_address_detail, is_sign, user_source, is_house_manager, data_source, deposit_money from se_user LIMIT 12,3
2019-06-03 17:43:24.783 DEBUG 30808 --- [nio-8080-exec-5] c.e.boot2.mapper.UserMapper.selectAll : ==> Parameters:
2019-06-03 17:43:24.789 DEBUG 30808 --- [nio-8080-exec-5] c.e.boot2.mapper.UserMapper.selectAll : <== Total: 3
3
3

返回 3条数据:

pagehelper用法的更多相关文章

  1. MyBatis 分页插件 PageHelper 使用

    1.  引入Maven依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...

  2. Echo团队Alpha冲刺随笔 - 第二天

    项目冲刺情况 进展 项目各端都已经开始正式动工,完成了框架的搭建及小部分代码的编写 问题 对于框架使用不够熟练 心得 撸起袖子加油干! 今日会议内容 黄少勇 今日进展 实现账号绑定和首页公告信息及使用 ...

  3. MyBatis-Plus 用起来真的很舒服

    一.MyBatis-Plus 1.简介 MyBatis-Plus 是一个 Mybatis 增强版工具,在 MyBatis 上扩充了其他功能没有改变其基本功能,为了简化开发提交效率而存在. 官网文档地址 ...

  4. PageHelper分页正确用法

    依赖和配置就不说了,说用法 Page<Object> page = PageHelper.startPage(pageNum, pageSize); List<SysRoleDTO& ...

  5. Spring集成PageHelper的简单用法

    1.Maven依赖,注意使用PageHelper时的版本必须与Mybatis版本对应 <!-- 添加Mybatis依赖 --> <dependency> <groupId ...

  6. Mybatis分页插件PageHelper正确的用法(网上有2篇不够科学的文章)

    今天下午在Mybatis项目中.实现分页.由于我是后加入项目中的,Leader用的是PageHelper这个组件.可是我在实际使用的过程中遇到了2个大问题. 1.p=2#comments" ...

  7. MyBatis学习总结_17_Mybatis分页插件PageHelper

    如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件. 分页插件支持任何复杂的单表.多表分页,部分特殊情况请看重要提示. 想要使用分页插件?请看如何使用分页插件. 物理分页 该 ...

  8. Mybatis 数据库物理分页插件 PageHelper

    以前使用ibatis/mybatis,都是自己手写sql语句进行物理分页,虽然稍微有点麻烦,但是都习惯了.最近试用了下mybatis的分页插件 PageHelper,感觉还不错吧.记录下其使用方法. ...

  9. Mybatis基本用法--下

    Mybatis基本用法--下 第七部分 mybatis-spring-boot-starter 官网:http://www.mybatis.org/spring-boot-starter/mybati ...

随机推荐

  1. 重新编译mysqldump,使mysqldump具有进度输出功能

    重新编译mysql,使mysqldump具有进度输出功能 安装编译过程所必须的依赖包和环境 yum install -y gcc cmake boost boost-build boost-devel ...

  2. QTP(15)

    Test15001_两位数加法器 Option Explicit Dim num1,num2,result,ex 'result 实际结果 = 被测系统结果输入框中的值 'ex 预期结果 = num1 ...

  3. 实际应用脚本备份1——Ubuntu下应用升级脚本与执行方法

    程序自动更新脚本,命名为makefile: build:run run: killall java /webapps/‘应用目录名’/ /webapps/ ‘应用目录名’/ cd /opt/apach ...

  4. NoSQL数据库技术实战-第1章 NoSQL与大数据简介 NoSQL数据库的类型

    键值存储数据库临时性:如Memcached.临时性的键值数据库把数据存储在内存中,在两种情况下会造成上数据的丢失,一是断电,而是数据内容超出内存大小.这种处理的好处是非常快.永久型:如Tokyo Ty ...

  5. loj2718 「NOI2018」归程[Kruskal重构树+最短路]

    关于Kruskal重构树可以翻阅本人的最小生成树笔记. 这题明显裸的Kruskal重构树. 然后这题限制$\le p$的边不能走,实际上就是要满足走最小边权最大的瓶颈路,于是跑最大生成树,构建Krus ...

  6. 09-sp_lock和sys.dm_tran_locks的用法

    一.总结 1.网址 https://docs.microsoft.com/zh-cn/sql/relational-databases/system-stored-procedures/sp-lock ...

  7. C++中虚函数继承类的内存占用大小计算

    计算一个类对象的大小时的规律: 1.空类.单一继承的空类.多重继承的空类所占空间大小为:1(字节,下同): 2.一个类中,虚函数本身.成员函数(包括静态与非静态)和静态数据成员都是不占用类对象的存储空 ...

  8. Python之hashlib模块的使用

    hashlib模块主要的作用: 加密保护消息安全,常用的加密算法如MD5,SHA1等. 1.查看可用的算法有哪些 #!/usr/bin/env python # -*- coding: utf-8 - ...

  9. 网络摘抄jdk1.8——jvm分析与调优

    一.JVM空间说明 JDK 1.7及以前,Java 类信息.常量池.静态变量都存储在 Perm(永久代)里.类的元数据和静态变量在类加载的时候分配到 Perm,当类被卸载的时候垃圾收集器从 Perm ...

  10. CSS选择器div和p的用法和区别

    div,p.div p.div>p.div+p.div~p.div.a的用法和区别 div,p:选择所有<div>元素和<p>元素 <style> p,spa ...