前言
这几天上手了MybatisPlus以及插件mybatisX,但遇到一个问题,多表联查不好实现,于是找到了以下办法进行实现。
导入包 mybatis-plus-join
<dependency>
<groupId>com.github.yulichang</groupId>
<artifactId>mybatis-plus-join</artifactId>
<version>1.2.4</version>
</dependency>
Mapper类修改
BaseMapper 改为 MPJBaseMapper
public interface MedicineMapper extends MPJBaseMapper<Medicine> {
}
左连接示例
List<SelectInfoDTO> selectInfoDTOS = medicineMapper.selectJoinList(SelectInfoDTO.class,
new MPJLambdaWrapper<Medicine>()
.selectAll(Medicine.class)
.selectAs(Medicine::getMedicinename, SelectInfoDTO::getName)
.selectAs(MedicineFunc::getVariantid, SelectInfoDTO::getVariantid)
.leftJoin(MedicineFunc.class, MedicineFunc::getMedicinename, Medicine::getMedicinename)
);