zoukankan      html  css  js  c++  java
  • mybatis的分页插件使用方法

    1.下载所需要的jar包,如果使用maven可以在maven中添加依赖;

    插件的实现原理:

    如果你想使用本项目的jar包而不是直接引入类,你可以在这里下载各个版本的jar包(点击Download下的jar即可下载)

    由于使用了sql解析工具,你还需要下载这个文件(这个文件完全独立,不依赖其他):

    <dependency>

        <groupId>com.github.pagehelper</groupId>

        <artifactId>pagehelper</artifactId>

        <version>3.4.2</version>

    </dependency>

    <dependency>

        <groupId>com.github.jsqlparser</groupId>

        <artifactId>jsqlparser</artifactId>

        <version>0.9.1</version>

    </dependency>

    2、在mybatis的SqlMapConfig.xml中配置拦截器插件

    <plugins>

        <!-- com.github.pagehelper为PageHelper类所在包名 -->

        <plugin interceptor="com.github.pagehelper.PageHelper">

            <property name="dialect" value="mysql"/>

    </pulgin>

    </plugins>

    3、在执行查询的sql语句钱加一句话:

    PageHelper.startPage(page,rows);

    page是查询的哪一页,rows是该页显示的记录条数。

    4、取出查询的总记录数

    利用PageInfo类。

    PageInfo<> pageInfo=new PageInfo<>(list);

    这里的list是通过数据库查询出来的结果集,在PageInfo中封装,通过pageInfo.getTotal()获取总的记录数量。

    其中分页插件总共5个java类:

    分页插件项目中的正式代码一共有个5个Java文件,这5个文件的说明如下:

    • Page<E>[必须]:分页参数类,该类继承ArrayList,虽然分页查询返回的结果实际类型是Page<E>,但是可以完全不出现所有的代码中,可以直接当成List使用。返回值不建议使用Page,建议仍然用List。如果需要用到分页信息,使用下面的PageInfo类对List进行包装即可。
    • PageHelper[必须]:分页插件拦截器类,对Mybatis的拦截在这个类中实现。
    • PageInfo[可选]:Page<E>的包装类,包含了全面的分页属性信息。
    • SqlParser[可选]:提供高效的count查询sql。主要是智能替换原sql语句为count(*),去除不带参数的order by语句。需要jsqlparser-0.9.1.jar支持。
    • SqlUtil[必须]:分页插件工具类,分页插件逻辑类,分页插件的主要实现方法都在这个类中。

     

  • 相关阅读:
    HttpClient 教程 (四)
    HttpClient 教程 (三)
    HttpClient 教程 (二)
    HttpClient 教程 (一)
    git还原本地提交的某个历史记录
    ExtJS下拉列表使用方法(异步传输数据)
    Struts整合ExtJS
    既有post提交又有get提交时的后台处理办法
    Ajax调用查看页面的后台返回json格式数据
    如何在VS中快速导入新的源码以及文件夹
  • 原文地址:https://www.cnblogs.com/fengli9998/p/6088375.html
Copyright © 2011-2022 走看看