MyBatisPlus分页查询列表接口

Controller

    @GetMapping("/myRoomRecord")
    @ApiOperation("历史记录")
    @Encrypt(params = {"pageNo", "pageSize"})
    public AjaxResult myRoomRecord(
            @ApiParam(value = "页码", name = "pageNo") @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo,
            @ApiParam(value = "页幅", name = "pageSize") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) {
        CscpUserDetail user= SecurityUtils.getCurrentUser().get();
        String userId=String.valueOf(user.getId());
        Page<Map<String, Object>> myExamineList = callRoomService.myRoomRecord(new Page<>(pageNo, pageSize), userId);
        return AjaxResult.success(myExamineList);
    }

Service

public interface CallRoomService extends IService<CallRoom> {
    Page<Map<String, Object>> myRoomRecord(Page<Map<String, Object>> page,String userId);
}

ServiceImpl

@Service
public class CallRoomServiceImpl extends ServiceImpl<CallRoomMapper, CallRoom> implements CallRoomService {
    @Resource
    CallRoomMapper callRoomMapper;
    @Override
    public Page<Map<String, Object>> myRoomRecord(Page<Map<String, Object>> page, String userId) {
        page.setSearchCount(true);
        List<Map<String, Object>> examineList = callRoomMapper.myRoomRecord(page, userId);
        return page.setRecords(examineList);
    }
}

Mapper

@Mapper
public interface CallRoomMapper extends BaseMapper<CallRoom> {
    List<Map<String, Object>> myRoomRecord(Page<Map<String, Object>> page, @Param("userId") String userId);

}

Mapper.xml里面的SQL语句

    <select id="myRoomRecord" resultType="java.util.Map">
        SELECT t.ROOM_ID,r.CREATE_TIME,t.IS_KICK_OUT,t.KICK_TIME,t.IS_REJECT_CALL,t.REJECT_CALL_TIME,r.ROOM_NAME,r.EXIT_TIME,r.ROOM_STATUS,r.ROOM_TYPE
        FROM tbl_call_room_user t
         LEFT JOIN tbl_call_room r ON t.ROOM_ID=r.ROOM_ID
        WHERE t.USER_ID=#{userId} AND t.USER_TYPE='2' ORDER BY r.CREATE_TIME DESC

    </select>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
MyBatis-Plus是一个便捷、高效、强大的MyBatis框架的增强工具,它提供了很多实用的功能,其中包括分页查询。 对于双表分页查询接口,你可以按照以下步骤来实现: 1. 首先,确保你已经在项目中引入了MyBatis-Plus依赖。 2. 创建两个实体类,分别对应着你要查询的两张表。可以使用`@TableName`注解来指定实体类对应的数据库表名。 3. 在每个实体类中,使用`@TableId`注解来标识主键字段。如果主键字段名与数据库表中的字段名不一致,还需使用`@TableField`注解进行映射。 4. 创建两个Mapper接口,并继承`BaseMapper`接口。`BaseMapper`接口已经提供了一些常用的数据库操作方法,包括分页查询。 5. 在其中一个Mapper接口中,编写一个自定义的方法来执行双表分页查询操作。可以使用`@SelectProvider`注解,并指定一个自定义的Provider类来动态生成SQL语句。 6. 在Provider类中,使用`@ProviderType`注解指定当前类为Provider类型,并编写一个返回`String`类型的方法。在方法中,使用MyBatis-Plus提供的`QueryWrapper`和`Page`类来构造查询条件和分页信息。 7. 在方法中,使用`selectMapsPage()`方法执行分页查询,并返回查询结果。 这样,你就可以通过调用该自定义方法来实现双表的分页查询操作了。 请注意,以上只是一个简单的示例,具体实现还需要根据你的具体需求进行调整。另外,建议查阅MyBatis-Plus的官方文档以获取更详细的使用说明和示例代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黄油奥特曼

如果可以,请我喝一杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值