geek的技术日志,记录每一次技术思考的闪光点。

使用pagehelper给mybatis分页总结(mybatis-plus和miemiedev paginator、pagehelper分页对比)

说明

mybatis的分页插件有很多,有miemiedev的paginator,有mybatis-plus的,还有github的pagehelper。

之前一直用paginator,后来他停更了,架构师说停更的包风险大,就换。试了下mybtis-plus,对现有代码影响太大,不好用,用pagehelper,发现还挺方便的。

step1 加入包的依赖

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper</artifactId>
    <version>5.1.2</version>
</dependency>

step2 mybatis的配置文件加入分页插件。(另外还可以在spring配置文件里加,如果说springboot,还可以通过java config的形式配置,只要选一种就行了,不用重复,否则出错)

<plugins>
    <!-- com.github.pagehelper为PageHelper类所在包名 -->
    <plugin interceptor="com.github.pagehelper.PageInterceptor">
        <!-- 使用下面的方式配置参数,后面会有所有的参数介绍 -->
        <property name="param1" value="value1"/>
    </plugin>
</plugins>

step3 如果说spring boot项目,使用了yml配置。则需要在yml的配置文件里加入mybatis config的文件路径配置。(如果不是则不需要)

mybatis:
  mapperLocations: classpath*:mybatis/*.xml
  typeAliasesPackage: com.aspirecn.domain
  configLocation: classpath:/mybatis-config.xml

step4 代码中使用

PageHelper.startPage(page, limit);
List<ECustomizeMenuListOutVo> list= eCustomizeMenuMapper.selectListByName(e);
PageInfo<ECustomizeMenuListOutVo> pageList = new PageInfo<>(list);

如上,使用很简单,不需要侵入原有代码,只需要在mapper的select之前加入分页信息和之后封装成分页结果即可。

但是要注意startpage方法一定要跟mapper方法连一起。pageInfo对象里可以拿到页码 当前页,记录数,总页数等各种分页查询的结果信息。

 

打赏作者

未经允许不得转载:极客技术 » 使用pagehelper给mybatis分页总结(mybatis-plus和miemiedev paginator、pagehelper分页对比)

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址