MyBatis-Plus selectMapsPage报错

解决方案

Page的泛型由 实体(Page<T>) 修改为 IPage<Map<String, Object>>

  • 前提 config配置和其他代码没有错
  • 在官网推荐的慕课视频 https://www.imooc.com/video/19510/0
    在这里插入图片描述

视频中的代码

@Test
    public void selectMapsPage() {
        LambdaQueryWrapper<User> query = new LambdaQueryWrapper<>();
        query.ge(User::getAge,26).orderByDesc(User::getCreateTime);

        Page<User> page = new Page<> (1,2);
        IPage<Map<String,Object>>  iPage = userMapper.selectMapsPage(page,query);

        System.out.println("总页数:"+page.getPages());
        System.out.println("总记录数:"+iPage.getTotal());
        List<Map<String,Object>> list = iPage.getRecords();
        list.forEach(System.out::println);
    }

当前使用的版本 3.3.1.tmp

如果按照视频的代码会报错
在这里插入图片描述

修改后

@Test
public void selectMapsPage() {
	QueryWrapper<User> wrapper = new QueryWrapper<User>();
	wrapper.like("name", "王");

	int pageNum = 1; // 当前页
	int pageSize = 3; // 每页大小

	//  Page<User> 修改为 IPage<Map<String, Object>>
//		Page<User> page = new Page<>(pageNum, pageSize); // selectMapsPage会报错
	IPage<Map<String, Object>> page = new Page<>(pageNum, pageSize); 
	userMapper.selectMapsPage(page, wrapper);
	System.out.println("总页数:" + page.getPages());
	System.out.println("总记录数:" + page.getTotal());
	List<Map<String, Object>> list = page.getRecords();
	list.forEach(System.out::println);

}

原因:源码规定了类型

参考:https://www.imooc.com/qadetail/341798
在这里插入图片描述

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值