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>
調(diào)用該方法
QueryWrapper<User> userWrapper = Wrappers.<User>query(); QueryWrapper<Dept> deptWrapper = Wrappers.<Dept>query(); ? ? ? ?? userWrapper.eq("u.name","張三"); userWrapper.setParamAlias("ew1"); //這里要設(shè)置別名,不然會報異常 /*deptWrapper.eq("d.deptname","開發(fā)部"); 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}
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- MybatisPlus使用Wrapper實現(xiàn)條件查詢功能
- mybatis-plus自帶QueryWrapper自定義sql實現(xiàn)復(fù)雜查詢實例詳解
- Mybatis-plus動態(tài)條件查詢QueryWrapper的使用案例
- MyBatisPlus-QueryWrapper多條件查詢及修改方式
- mybatisplus where QueryWrapper加括號嵌套查詢方式
- MybatisPlus使用queryWrapper如何實現(xiàn)復(fù)雜查詢
- MyBatis-Plus實現(xiàn)2種分頁方法(QueryWrapper查詢分頁和SQL查詢分頁)
- mybatis-plus QueryWrapper自定義查詢條件的實現(xiàn)
- 詳解MyBatis-Plus Wrapper條件構(gòu)造器查詢大全
- Mybatis Plus Wrapper查詢某幾列的方法實現(xiàn)
相關(guān)文章
本地啟動RocketMQ未映射主機名產(chǎn)生的超時問題最新解決方案
這篇文章主要介紹了本地啟動RocketMQ未映射主機名產(chǎn)生的超時問題,本文給大家分享最新解決方案,感興趣的朋友跟隨小編一起看看吧2024-02-02java實現(xiàn)順序結(jié)構(gòu)線性列表的函數(shù)代碼
java實現(xiàn)順序結(jié)構(gòu)線性列表的函數(shù)代碼。需要的朋友可以過來參考下,希望對大家有所幫助2013-10-10Java使用OpenCV3.2實現(xiàn)視頻讀取與播放
這篇文章主要為大家詳細介紹了Java使用OpenCV3.2實現(xiàn)視頻讀取與播放,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07