分页

在实际的开发场景中,有些常常使用 MybatisPlus 的IPage接口作为分页接口的返回值,但是其实这是不合规的。也有有一些项目中,使用自定义的分页对象作为响应返回,但是通常都需要程序员手动进行对象转换。而且根据底层框架的不同,可能存在多种转换的情况。

针对这种开发场景, miemiemie提供了

  1. 一个分页实体 com.miemiemie.starter.core.page.Page,该类用以代表分页的数据,比如,接口的分页响应。
  2. 一个分页转换接口,用于将其他分页类转换为所需要的分页类 com.miemiemie.starter.core.page.PageConvert
  3. 一个分页转换工厂,不同的分页类可以将自己的转换器注册到工厂中,然后使用工厂获取对应的转换,从而得到目标com.miemiemie.starter.core.page.Page

使用转换器转换Page对象

@Resouce
private PageConvertFactory pageConvertFactory;

pageConvertFactory.getConvert(IPage.class).convert(page);

MybatisPlus 支持

miemiemie-mybatisplus模块中,存在一个关于IPage的转换com.miemiemie.starter.mybatisplus.page.MybatisPlusPageConvert,用于将IPage转换为Page对象。

Pages 分页工具

// 转换page
Page<Person> personPage = Pages.toPage(iPage, Person.class);

// 创建一个空的分页
Pages.emptyPage();

// 对内存的List数据分页
Pages.pageFromList(list, 10, 2);

// 判断分页对象是否有数据
Pages.hasRecords(personPage);

// 根据分页信息判断是否有下一页数据
Pages.hasNextPage(personPage);

更多方法请直接查看Pages类。

results matching ""

    No results matching ""