问题描述
问题也很简单,我在项目中使用mybatis-plus想做个分页,然后把代码写完了,然后去测试一直没办法分页,第一反应是不是因为参数没有接收到,然后使用debug模式进行测试,发现参数是没有问题的,然后又觉得是不是包导错了,去检查发现也没错,又去检查的依赖,该看的都看了,都没找到问题
分页代码:
public R getUserPage(String keywords, PageBean pageBean) {
QueryWrapper<User> wrapper =new QueryWrapper<>();
if(StringUtils.hasText(keywords)){
//根据用户名称进行模糊查询或者根据根据昵称进行模糊查询
wrapper.like("username",keywords)
.or()
.like("cname",keywords);
}
Page<User> page = this.page(new Page<>(pageBean.getPage(),
pageBean.getSize()), wrapper);
return R.ok(new PageResult(page.getTotal(),
CopyBean.copyBean(page.getRecords(), UserVo::new)));
}
解决方案:
然后就去mybatis-plus官网找找看,大概意思是,写了代码还不够进行分页,还需要配置分页插件,然后就解决了,对mp还是了解的不够深入,才出现这样低价错误的。
@Configuration
public class MybatisPlusConfig {
/**
* 乐观锁插件
*/
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor(){
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor()); // 乐观锁插件
// DbType:数据库类型(根据类型获取应使用的分页方言)
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); // 分页插件
return interceptor;
}
}