zoukankan      html  css  js  c++  java
  • Mybatis分页方法

     使用 Maven

    在 pom.xml 中添加如下依赖:

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

    Example

    可以这样调用,PageHelper.startPage(1,10)表示从第一页开始,每页10条记录,返回值为Page<>。

    @RestController
    
    public class ProductController {
    
        @Autowired
    
        ProductMapper productMapper;
    
    
    
        @RequestMapping("getProduct")
    
        public Page<Product>  getProduct(){
    
            PageHelper.startPage(1,10);
    
            Page<Product> productList = (Page<Product>) productMapper.selectAll();
    
            return productList;
    
        }
    
    }

    这是直接通过mapper获取DO数据可以直接使用,List<>可以被直接强转为Page<>。

    如果要转换为DTO或VO,需要通过下面的方式

     1 @RequestMapping("getProduct")
     2 public PageInfo<ProductDTO>  getProduct(){
     3     PageHelper.startPage(1,10);
     4 
     5     List<ProductDTO> productDTOS = new ArrayList<>();
     6     List<Product> productList = productMapper.selectAll();
     7     PageInfo<Product> pageInfo = new PageInfo<>(productList);
     8 
     9     for (Product product : productList) {
    10         ProductDTO productDTO = new ProductDTO();
    11         BeanUtils.copyProperties(product,productDTO);
    12         productDTOS.add(productDTO);
    13     }
    14 
    15     PageInfo pageResult = new PageInfo(productDTOS);
    16     return pageResult;
    17 }

    返回值为PageInfo<>类型,因为List<DTO>为ArrayList类,不能直接转为Page<>,所以放在PageInfo<>中。

    前端取list中的内容即可,其余为参数信息。

    PageHelper.startPage 静态方法调用

    除了 PageHelper.startPage 方法外,还提供了类似用法的 PageHelper.offsetPage 方法。

    在你需要进行分页的 MyBatis 查询方法前调用 PageHelper.startPage 静态方法即可,紧跟在这个方法后的第一个MyBatis 查询方法会被进行分页。

  • 相关阅读:
    Django搭建环境_初始化
    Python3 获取以及解析json格式
    python遍历目录树删除指定后缀的文件
    redis基础
    Centos7 更换阿里yum源
    Python3 实现带cookie登陆网站--自动
    Python3 requests实现cookie登陆--手动
    Flask中使用Editormd上传图片
    Flask中数据库的多对多关系
    Flask中博客类的Post实现
  • 原文地址:https://www.cnblogs.com/tentacion/p/11376752.html
Copyright © 2011-2022 走看看