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

 更新时间:2022年01月11日 11:08:35   作者:雨我无瓜.  
这篇文章主要介绍了mybatisplus如何在xml的连表查询中使用queryWrapper,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

在xml的连表查询使用queryWrapper

在mapper接口中定义方法

List<Map<String,Object>> linkUserAndDept(@Param("ew1") Wrapper<User> wrapper1, @Param("ew2") Wrapper<Dept> wrapper2);

在mapper xml中

  <select id="linkUserAndDept" resultType="java.util.Map">
        select u.name,u.age,u.address,d.* from user u left join dept d on u.deptid = d.deptid
        <where>
            <trim prefixOverrides="AND">
                <if test="ew1!=null and ew1.sqlSegment!=null and ew1.sqlSegment != ''">
                    AND ${ew1.sqlSegment}
                </if>
                <if test="ew2!=null and ew2.sqlSegment!=null and ew2.sqlSegment != ''">
                    AND ${ew2.sqlSegment}
                </if>
            </trim>
        </where>
    </select>

调用该方法

QueryWrapper<User> userWrapper = Wrappers.<User>query();
QueryWrapper<Dept> deptWrapper = Wrappers.<Dept>query();    
    
userWrapper.eq("u.name","张三");
userWrapper.setParamAlias("ew1"); //这里要设置别名,不然会报异常
/*deptWrapper.eq("d.deptname","开发部");
deptWrapper.setParamAlias("ew2");*/    
    
List<Map<String, Object>> map = userMapper.linkUserAndDept(userWrapper,deptWrapper);

mapper.xml 配合queryWrapper写法

mapper中的接口这么写

IPage selectPosts(Page page, @Param(Constants.WRAPPER) QueryWrapper wrapper);

xml中${ew.customSqlSegment}

就是querywrapper的条件

select * from user_collection ${ew.customSqlSegment}

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

相关文章

  • mvn compile报错“程序包com.XXX不存在”

    mvn compile报错“程序包com.XXX不存在”

    本文主要介绍了mvn compile报错“程序包com.XXX不存在”,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Java @Transactional指定回滚条件

    Java @Transactional指定回滚条件

    这篇文章主要介绍了Java @Transactional指定回滚条件,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-08-08
  • 一篇文章带你入门Java封装

    一篇文章带你入门Java封装

    Java面向对象的三大特性:封装、继承、多态。下面对三大特性之一封装进行了总结,需要的朋友可以参考下,希望能给你带来帮助
    2021-08-08
  • spring AOP自定义注解方式实现日志管理的实例讲解

    spring AOP自定义注解方式实现日志管理的实例讲解

    下面小编就为大家分享一篇spring AOP自定义注解方式实现日志管理的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • java如何使用zip压缩实现读取写入

    java如何使用zip压缩实现读取写入

    这篇文章主要为大家介绍了java如何使用zip压缩实现读取写入示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • Java数组反转方式

    Java数组反转方式

    这篇文章主要介绍了Java数组反转方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Java中public关键字用法详细讲解

    Java中public关键字用法详细讲解

    这篇文章主要给大家介绍了关于Java中public关键字用法的相关资料,public关键字是和访问权限相关的,它所修饰的方法对所有类都是可以访问的,需要的朋友可以参考下
    2023-09-09
  • idea创建包含多个springboot module的maven project的方法

    idea创建包含多个springboot module的maven project的方法

    这篇文章主要介绍了idea创建包含多个springboot module的maven project的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • SpringBoot接收参数所有方式总结

    SpringBoot接收参数所有方式总结

    这篇文章主要介绍了SpringBoot接收参数所有方式总结,文中通过代码示例和图文结合的方式给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-07-07
  • SpringBoot如何在普通类加载Spring容器

    SpringBoot如何在普通类加载Spring容器

    这篇文章主要介绍了SpringBoot如何在普通类加载Spring容器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04

最新评论