mybatisplus如何在xml的连表查询中使用queryWrapper

目录

  • 在xml的连表查询使用queryWrapper
    • 在mapper接口中定义方法
    • 在mapperxml中
    • 调用该方法
  • mapper.xml配合queryWrapper写法
    • mapper中的接口这么写
    • xml中${ew.customSqlSegment}

在xml的连表查询使用queryWrapper
在mapper接口中定义方法
List linkUserAndDept(@Param("ew1") Wrapper wrapper1, @Param("ew2") Wrapper wrapper2);


在mapper xml中
select u.name,u.age,u.address,d.* from user u left join dept d on u.deptid = d.deptidAND ${ew1.sqlSegment}AND ${ew2.sqlSegment}


调用该方法
QueryWrapper userWrapper = Wrappers.query(); QueryWrapper deptWrapper = Wrappers.query(); userWrapper.eq("u.name","张三"); userWrapper.setParamAlias("ew1"); //这里要设置别名,不然会报异常/*deptWrapper.eq("d.deptname","开发部"); deptWrapper.setParamAlias("ew2"); */List map = userMapper.linkUserAndDept(userWrapper,deptWrapper);

【mybatisplus如何在xml的连表查询中使用queryWrapper】
mapper.xml 配合queryWrapper写法
mapper中的接口这么写
IPage selectPosts(Page page, @Param(Constants.WRAPPER) QueryWrapper wrapper);


xml中${ew.customSqlSegment}
就是querywrapper的条件
select * from user_collection ${ew.customSqlSegment}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    推荐阅读