mybatis-plus多表联合分页查询简便方式

作者: adm 分类: java,mybatis 发布时间: 2022-07-26

简单说明
相对应的jar包引入以及mybatisPlus的分页配置就不作赘述,相信搜相关话题的朋友应该基础都了解,如有朋友需要可评论或私信,我会加上!
此文章不作深入研究,仅限顺利执行。
代码部分
代码部分只需在mapper接口写方法,controller中调用即可。
下面开始吧!
mapper接口内方法

      import org.apache.ibatis.annotations.Mapper;
      import org.apache.ibatis.annotations.Param;
      import org.apache.ibatis.annotations.Select;
     /**
     * @param page 分页对象
     * @param wrapper 传参
     * @return
     */
    @Select("select a.*,b.* from table_A a join table_B b on a.BId=b.id ${ew.customSqlSegment}")
    List<实体类> pageList(Page page, @Param(Constants.WRAPPER) Wrapper wrapper);
 

以上部分你只需要修改两表联合查询的sql语句,参数部分不需要修改,留给Wrapper 对象自信添加。以及修改相对应的返回实体类。

controller
@PostMapping("/list")
    public Object list(@RequestBody Params params) {
        Page<ArticleListedVo> page = new Page<>(params.getPageIndex(), params.getPageSize());
        List<ArticleListedVo> resources = testMapper.pageList(page,new QueryWrapper<ArticleListedVo>());
        page.setRecords(resources);
        return page;
    }
 

controller中只需调用上面mapper中的方法即可。把pageindex和pageSize放进page对象。需要注意的是,以上“实体类”需要根据你自己的实际情况进行修改。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!