简单使用
- 集成
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.13</version>
</dependency>
- 添加properties配置项
pagehelper.helper-dialect=sqlite
pagehelper.reasonable=true
pagehelper.support-methods-arguments=true
- service、dao、mapper中进行常规查询
//mapper
select * from user
//dao
List<User> getUsers();
//service
public List<User> getUsers() {
return wrapperDao.getUsers();
}
- controller中添加分页逻辑
@GetMapping("getUsers")
public PageInfo<User> getUsers(int page, int pageSize) {
/*return PageHelper.startPage(page, pageSize).doSelectPageInfo(
() -> wrapperService.getUsers()
);*/
PageHelper.startPage(page, pageSize);
List<User> users = wrapperService.getUsers();
return new PageInfo<>(users);
}
问题记录
otherExceptionHandler:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property=‘First_PageHelper’, mode=IN, javaType=class java.lang.Integer, jdbcType=null, numericScale=null, resultMapId=‘null’, jdbcTypeName=‘null’, expression=‘null’}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.lang.ArrayIndexOutOfBoundsException: 0
//mapper.xml中简单的sql有问题,查了一天
select * from user;
//解决办法去掉分号,如下即可正常查询不报错
select * from user