使用方式
<dependency>
<groupId>com.github.yulichang</groupId>
<artifactId>mybatis-plus-join-boot-starter</artifactId>
<version>1.5.7</version>
</dependency>
单字段平铺关联
MPJLambdaWrapper<User> wrapper = new MPJLambdaWrapper<User>()
.selectAll(User.class)//查询user表全部字段
.select(Address::getCity, Address::getAddress)
.leftJoin(Address.class, Address::getUserId, User::getId);
一对一关联
整体数据封装到Vo的单独字段
MPJLambdaWrapper<TbTeam> wrapper = new MPJLambdaWrapper<>();
wrapper.selectAll(TbTeam.class);
// 排序
wrapper.orderByAsc(TbTeam::getId);
// 条件
wrapper.eq(TbTeam::getUserId, params.getUserId());
// 一对一关联:关联表,关联表ID,本表关联ID
wrapper.leftJoin(TbUser.class, TbUser::getId, TbTeam::getTeamUserId);
// 一对一关联:关联表,映射字段
wrapper.selectAssociation(TbUser.class, TbTeamListResp::getTeamUser);
// 查询
List<TbTeamListResp> list = this.selectJoinList(TbTeamListResp.class, wrapper);