Mybatis-plus LambdaQuery 连接两个表并返回 JSON 数据
您可以使用 Mybatis-plus 的 lambdaQuery,然后使用 selectJoin 方法将两个表连接查询,最后将结果转换成 json 格式。
示例代码:
QueryWrapper<IpAddress> wrapper = new QueryWrapper<>();
wrapper.lambda().eq(IpAddress::getId, id); // 根据id查询
List<Map<String, Object>> list = ipAddressMapper.selectMaps(wrapper.select(IpAddress::getIp)
.selectJoin(IpDetail.class, IpAddress::getId, IpDetail::getIpAddressId, IpDetail::getDetail)); // 连接查询
String json = JSON.toJSONString(list); // 转换成json格式
其中,IpAddress 和 IpDetail 是对应的实体类,ipAddressMapper 是对应的 Mapper 接口。在 selectJoin 方法中,第一个参数是关联表的实体类,第二个参数是当前表的关联字段,第三个参数是关联表的关联字段,第四个参数是需要查询的字段。最后,使用 JSON.toJSONString 方法将结果转换成 json 格式。
原文地址: https://www.cveoy.top/t/topic/mKrY 著作权归作者所有。请勿转载和采集!