SpringBoot 集成mybatis pageHelper分页查询
一、导入依赖
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
注意,依赖一定要依赖这个,这样可以在配置文件中配置,直接生成bean,不需要显式配置。如果使用以下依赖,需要显示配置 出pageHelper的bean
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.2</version>
</dependency>
显式配置(没有试过):
@Configuration
public class PageHelperConfig {
@Bean
public PageHelper getPageHelper(){
PageHelper pageHelper=new PageHelper();
Properties properties=new Properties();
properties.setProperty("helperDialect","mysql");
properties.setProperty("reasonable","true");
properties.setProperty("supportMethodsArguments","true");
properties.setProperty("params","count=countSql");
pageHelper.setProperties(properties);
return pageHelper;
}
}
二、更改配置文件
在应用程序配置文件下 增加pagehelper相关配置
#pageHelper配置
# 分页插件会自动检测当前的数据库链接,自动选择合适的分页方式(可以不设置)
pagehelper.helper-dialect=mysql
# 默认值为 false,该参数对使用 RowBounds 作为分页参数时有效。(一般用不着)
pagehelper.reasonable=true
# 默认值为 false。设置为 true 时,允许在运行时根据多数据源自动识别对应方言的分页,和params配合使用
pagehelper.support-methods-arguments=true
pagehelper.params=count=countSql
三、使用
注意,只有分页语句后的第一个查询可以实现分页功能
public List<Consumer> selectByCondition(Integer pageNumber, Integer pageSize){
//只有分页后的第一个查询有用!!!
PageHelper.startPage(pageNumber,pageSize);
ConsumerExample consumerExample = new ConsumerExample();
// ConsumerExample.Criteria criteria= consumerExample.createCriteria();
return consumerMapper.selectByExample(consumerExample);
}
封装成pageInfo作为返回,会包含很多分页的相关信息
PageInfo<Consumer> pageInfo = new PageInfo<>(list);
还没有评论,来说两句吧...