首先当然是在pom.xml中引入依赖啦:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>4.1.3</version>
</dependency>
然后按照网上说的写个java类来实现注入:
package cn.mk95.blog.config;
import com.github.pagehelper.PageHelper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.Properties;
/**
* @Auther: ai17
* @Date: 2018/10/28 23:50
* @Description:
*/
@Configuration
public class MybatisConfigurationConfig {
/**
* mybatis 分页插件
* @return
*/
@Bean
public PageHelper pageHelper(){
PageHelper pageHelper=new PageHelper();
Properties properties=new Properties();
properties.setProperty("offsetPageNum","true");
properties.setProperty("rowBoundsWithCount", "true");
properties.setProperty("reasonable", "true");
pageHelper.setProperties(properties);
return pageHelper;
}
}
然后就开始使用了,在要分页的查询前使用PageHelper.startPage(currentPage, pageSize)
实现结果集分页,如下:
public PageInfo queryDjphBlog(int currentPage, int pageSize) {
PageHelper.startPage(currentPage, pageSize);
final List blogVOs = blogMapper.queryBlogDjph();
PageInfo pageInfo = new PageInfo(blogVOs, pageSize);
return pageInfo;
}
结果,,,分页居然不生效。实在是想不到原因,这可能就是自己瞎折腾的坏处吧,没有系统的学习,很容易卡在一个地方。在网上找原因,找了很久,都开始萌生换种方式的想法了,但是钻了牛角尖。还好,最后还是找到问题所在了,原来是在pom.xml中少引入了一个依赖:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-autoconfigure</artifactId>
<version>1.2.5</version>
</dependency>
引入这个依赖后就可以啦,希望可以帮助遇到同样问题的你。
另一种使用这个分页插件的方式是在pom.xml中引入:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
在application.properties配置pagehelper的属性:
#pagehelper分页插件配置
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
然后就可以使用啦,使用方法和上面提到的一样,在要分页的查询之前使用PageHelper.startPage(currentPage, pageSize)
就可以了。不过这个配置方法我还没用过,等下次的项目就用这个试试。