笔记

5、PageHelper分页插件使用
    简介:讲解开源组件,mybaits分页插件的使用

1、引入依赖
            <!-- 分页插件依赖 -->
            <dependency>
                <groupId>com.github.pagehelper</groupId>
                <artifactId>pagehelper</artifactId>
                <version>4.1.0</version>
            </dependency>

2、增加配置文件
                @Configuration
            public class MyBatisConfig {
                @Bean
                public PageHelper pageHelper(){
                    PageHelper pageHelper = new PageHelper();
                    Properties p = new Properties();
                    p.setProperty("offsetAsPageNum","true");
                    p.setProperty("rowBoundsWithCount","true");
                    p.setProperty("reasonable","true");
                    pageHelper.setProperties(p);
                    return pageHelper;
                }
            }

3、包装类
                PageHelper.startPage(page, size);

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

4、基本原理    
            sqlsessionFactory -> sqlSession-> executor -> mybatis sql statement
            通过mybatis plugin 增加拦截器,然后拼装分页
            org.apache.ibatis.plugin.Interceptor

开始

一般sql语句写的分页


首先引入依赖

 
新增配置文件。这里是用注解的方式



输出的sql语句

数据库内总共11条数据

返回的很多分页字段数据用不到,用Map再抽取一下

这就是封装的分页数据

流程图


拦截器的类的代码。可以尝试封装自己的拦截器

最新文章

  1. Java【小考】
  2. 彻底弄明白之数据结构中的KMP算法
  3. html的标签中 unselectable=on 属性的作用
  4. C#基础学习心得(二)
  5. thinkphp 3.2.3 入门示例
  6. GitLab 5.3 升级注意事项
  7. 每天学习点--------第六天(2017-10-10) 摘要: mysql和Oracle的区别
  8. Cesium 云服务
  9. CentOS 7安全加固
  10. 日历插件bootstrap-datetimepicker的使用感悟
  11. JSONArray
  12. PHP面向对象(抽象类与抽象方法、接口的实现)
  13. 论坛:获取当前原始请求中的远程IP地址
  14. odoo开发笔记 -- 附件上传
  15. Software-Defined Networking:A Comprehensive Survey--Day4
  16. OS X 10.11:在exFAT分区的外置硬盘上使用Time Machine。
  17. Uncaught DOMException: Failed to execute &#39;removeChild&#39; on &#39;Node&#39;: The node ……
  18. hdoj 1698 Just a Hook 【线段树 区间更新】
  19. Linq中的ToList()和CopyToDataTable()
  20. C++基础知识-inline、const、mutable、this、static

热门文章

  1. shell 中的通配符:
  2. JavaScript捕获和冒泡探讨
  3. 基于递归的BFS(Level-order)
  4. Mysql导入Excel数据 日期问题 (Excel 与 MySQL 时间戳格式和日期 互转)
  5. python: json模块 --JSON编码和解码
  6. 关于博主skywang123456文章——二叉堆(三)之 Java的实现的质疑
  7. python_tkinter组件
  8. deferred shading , tile deferred, cluster forward 对tranparent支持问题的思考
  9. PHP处理base64编码字符串
  10. linux系统nginx下反向代理解析二级目录泛目录教程