一. Mybatis分页插件PageHelper使用

 1、不使用插件如何分页:

使用mybatis实现:

1)接口:

  1. List<Student> selectStudent(Map<String, Object> map);

2)mapper.xml:

  1. <select id="selectStudent" resultMap="BaseResultMap" parameterType="java.util.Map" >
  2. select
  3. <include refid="Base_Column_List" />
  4. from student limit #{pageNum},#{pageSize}
  5. </select>

3)测试:

  1. @Test
  2. public void TestGetStudent() throws IOException {
  3. try {
  4. StudentMapper mapper=session.getMapper(StudentMapper.class);
  5. Map<String,Object> map=new HashMap<String,Object>();
  6. map.put("pageNum", 0);
  7. map.put("pageSize", 3);
  8. List<Student> students=mapper.selectStudent(map);
  9.  
  10. for(Student student :students)
  11. System.out.println(student.gettId() + " " + student.gettName() + " "+student.gettAge()+" "+student.gettEnterdate()+" "+student.gettSid());
  12.  
  13. }finally {
  14. session.close();
  15. }
  16.  
  17. }

2 使用PageHelper插件如何分页:

下载地址:

https://github.com/pagehelper/Mybatis-PageHelper

https://github.com/JSQLParser/JSqlParser

另外一个地址:

Pagehelper下载地址:

http://repo1.maven.org/maven2/com/github/pagehelper/pagehelper/

jsqlparser 下载地址:

http://repo1.maven.org/maven2/com/github/jsqlparser/jsqlparser/

使用步骤:

1、导入相关包pagehelper-x.x.x.jar 和  jsqlparser-x.x.x.jar。

2、在MyBatis全局配置文件中配置分页插件。

  1. <plugins>
  2.  
  3. <plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
  4.  
  5. </plugins>

3、使用PageHelper提供的方法进行分页

  1. StudentMapper mapper = session.getMapper(StudentMapper.class);
  2. //放在查询之前
  3. Page<Object> page = PageHelper.startPage(1, 3);
  4.  
  5. StudentExample example=null;
  6. List<Student> students=mapper.selectByExample(example);
  7.  
  8. for(Student student :students)
  9. System.out.println(student.gettId() + " " + student.gettName() + " "+student.gettAge()+" "+student.gettEnterdate()+" "+student.gettSid());
  10. System.out.println("当前页码:"+page.getPageNum());
  11. System.out.println("总记录数:"+page.getTotal());
  12. System.out.println("每页的记录数:"+page.getPageSize());
  13. System.out.println("总页码:"+page.getPages());

4、可以使用更强大的PageInfo封装返回结果

  1. StudentMapper mapper = session.getMapper(StudentMapper.class);
  2. Page<Object> page = PageHelper.startPage(1, 3);
  3.  
  4. StudentExample example=null;
  5. List<Student> students=mapper.selectByExample(example);
  6. for(Student student :students)
  7. System.out.println(student.gettId() + " " + student.gettName() + " "+student.gettAge()+" "+student.gettEnterdate()+" "+student.gettSid());
  8. PageInfo<Student> info = new PageInfo<Student>(students, 3);
  9. System.out.println("当前页码:"+info.getPageNum());
  10. System.out.println("总记录数:"+info.getTotal());
  11. System.out.println("每页的记录数:"+info.getPageSize());
  12. System.out.println("总页码:"+info.getPages());
  13. System.out.println("是否第一页:"+info.isIsFirstPage());
  14. System.out.println("连续显示的页码:");
  15. int[] nums = info.getNavigatepageNums();
  16. for (int i = 0; i < nums.length; i++) {
  17. System.out.println(nums[i]);
  18. }

Mybatis分页插件PageHelper使用的更多相关文章

  1. Mybatis分页插件PageHelper的配置和使用方法

     Mybatis分页插件PageHelper的配置和使用方法 前言 在web开发过程中涉及到表格时,例如dataTable,就会产生分页的需求,通常我们将分页方式分为两种:前端分页和后端分页. 前端分 ...

  2. Java SSM框架之MyBatis3(三)Mybatis分页插件PageHelper

    引言 对于使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真不想花双倍的时间写count和select ...

  3. Mybatis学习---Mybatis分页插件 - PageHelper

    1. Mybatis分页插件 - PageHelper说明 如果你也在用Mybatis,建议尝试该分页插件,这个一定是最方便使用的分页插件. 该插件目前支持Oracle,Mysql,MariaDB,S ...

  4. Mybatis分页插件PageHelper的实现

    Mybatis分页插件PageHelper的实现 前言 分页这个概念在做web网站的时候很多都会碰到 说它简单吧 其实也简单 小型的网站,完全可以自己写一个,首先查出数据库总条数,然后按照分页大小分为 ...

  5. 基于Mybatis分页插件PageHelper

    基于Mybatis分页插件PageHelper 1.分页插件使用 1.POM依赖 PageHelper的依赖如下.需要新的版本可以去maven上自行选择 <!-- PageHelper 插件分页 ...

  6. Mybatis分页插件-PageHelper的使用

    转载:http://blog.csdn.net/u012728960/article/details/50791343 Mybatis分页插件-PageHelper的使用 怎样配置mybatis这里就 ...

  7. (转)淘淘商城系列——MyBatis分页插件(PageHelper)的使用以及商品列表展示

    http://blog.csdn.net/yerenyuan_pku/article/details/72774381 上文我们实现了展示后台页面的功能,而本文我们实现的主要功能是展示商品列表,大家要 ...

  8. springmvc mybatis 分页插件 pagehelper

    springmvc mybatis 分页插件 pagehelper 下载地址:pagehelper 4.2.1 , jsqlparser 0.9.5 https://github.com/pagehe ...

  9. MyBatis 分页插件PageHelper 后台报错

    今天遇到一个问题,使用MyBatis 分页插件PageHelper 进行排序分页后,能正常返回正确的结果,但后台却一直在报错 net.sf.jsqlparser.parser.ParseExcepti ...

随机推荐

  1. 在vue2.0中使用sass

    第一步:使用sass必须安装下面三个东西 cnpm install node-sass --save //安装node-sass cnpm install sass-loader --save //安 ...

  2. java语言将任意一个十进制数数字转换为二进制形式,并输出转换后的结果

    package com.llh.demo; import java.util.Scanner; /** * * @author llh * */ public class Test { /* * 将任 ...

  3. poj3270Cow Sorting(置换+贪心)

    Cow Sorting Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 7587   Accepted: 2982 Descr ...

  4. Sqoop的安装部署

    在root的用户下 1):前提 安装JDK环境 2):前提 安装Hadoop和Hive客户端环境,如果需要导出到HBase则需要安装HBase客户端 3):下载sqoop : 命令: wget htt ...

  5. ionic3 打包安卓平台环境搭建报错解决方案总结

    1.jvm虚拟机提供的运行空间小于项目所需的空间是报错.如图: 解决方法:在环境变量中配置jvm的运行内存大小,大于所需的内存即可. 其中:-Xmx512M可根据实际提示情况,进行更改,如1024M, ...

  6. Problem D: 栈小游戏

    #include <iostream> #include <vector> #include <stack> #include <algorithm> ...

  7. Oracle-4 - :超级适合初学者的入门级笔记:plsql,基本语法,记录类型,循环,游标,异常处理,存储过程,存储函数,触发器

    初学者可以从查询到现在的pl/sql的内容都可以在我这里的笔记中找到,希望能帮到大家,视频资源在 资源, 我自己的全套笔记在  笔记 在pl/sql中可以继续使用的sql关键字有:update del ...

  8. nova创建虚拟机源码分析系列之七 传入参数转换成内部id

    上一篇博文将nova创建虚机的流程推进到了/compute/api.py中的create()函数,接下来就继续分析. 在分析之前简单介绍nova组件源码的架构.以conductor组件为例: 每个组件 ...

  9. 关于双11过后MATLAB许可过期问题的解决方案

    在距离双11还有2个月之前,matlab会提示:Your MATLAB license will expire in 50 days --------------------------------- ...

  10. 使用c#操作txt

    如何读取文本文件内容: 在本文介绍的程序中,是把读取的文本文件,用一个richTextBox组件显示出来.要读取文本文件,必须使用到"StreamReader"类,这个类是由名字空 ...