springboot + mybatis plus实现多表联查分页

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot + mybatis plus实现多表联查分页相关的知识,希望对你有一定的参考价值。

1 配置分页插件

public class MybatisPlusConfig {
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }
    @Bean
    public PerformanceInterceptor performanceInterceptor() {
        PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
        Properties properties = new Properties();
        properties.setProperty("format", "true");
        performanceInterceptor.setProperties(properties);
        return performanceInterceptor;
    }
}

2 创建返回实体VO

@ApiModel(value = "员工得分信息")
public class AgentOutVo {
    @ApiModelProperty(value = "所在单位")
    private String unit;
    略……
    @ApiModelProperty(value = "申诉状态")
    private String appealState;
}

3 service层
接口

public interface IAgentScoreService {
    List<AgentOutVo> queryAgentOutMapByPage(Map<String, Object> params);
}

实现

public class AgentScoreServiceImpl extends ServiceImpl<AgentScoreMapper, AgentScore> implements IAgentScoreService {
    @Autowired
    private AgentScoreMapper agentScoreMapper;
    @Override
    public List<AgentOutVo> queryAgentOutMapByPage(Map<String, Object> params) {
        return agentScoreMapper.selectAgentOutMap(new Query<AgentOutVo>(params).getPage(),params); 
    }
}

4 mapper

public interface AgentScoreMapper extends BaseMapper<AgentScore> {
    List<AgentOutVo> selectAgentOutMap(Page<AgentOutVo> pagination, @Param("params") Map<String, Object> params);//params 接收前端对象
}

5 resources/mapper/

<select id="selectAgentOutMap" resultType="com.itcc.qc.module.vo.AgentOutVo" parameterType="java.util.Map">
      select
      a.unit,a.dept,a.mission,a.workorder_pid,a.RECORD as recordtime,a.call, t.total_score,a.qer,t.appeal_state
      from
      t_qc_agentscore t,t_qc_agentscoreass a
      where
      t.workorder_pid=a.workorder_pid
      and 
t.appeal_state=#{params.appealState} <!—对应mapper @Param("params")-->
   </select>

以上是关于springboot + mybatis plus实现多表联查分页的主要内容,如果未能解决你的问题,请参考以下文章

如何整合 springboot + mybatis-plus(系列一)

Mybatis-Plus:快速开始(SpringBoot + Mybatis + Mybatis)

SpringBoot使用·下篇(SpringBoot集成MyBatis+日志打印+MyBatis-plus)

SpringBoot使用·下篇(SpringBoot集成MyBatis+日志打印+MyBatis-plus)

mybatis-plus整合springboot入门

mybatis-plus整合springboot入门