From fd51216322a2c5abddb4d383e6059a7df5852fb8 Mon Sep 17 00:00:00 2001 From: admin <570810310@qq.com> Date: Thu, 28 Jan 2021 10:40:32 +0800 Subject: [PATCH] first --- README.md | 51 ++++++++++++++++-- doc/selectAs.png | Bin 0 -> 12165 bytes doc/selectAsSql.png | Bin 0 -> 3374 bytes .../com/example/mp/business/dto/UserDTO.java | 2 + .../wrapper/MyJoinLambdaQueryWrapper.java | 4 +- src/test/java/com/example/mp/MpJoinTest.java | 7 ++- 6 files changed, 58 insertions(+), 6 deletions(-) create mode 100644 doc/selectAs.png create mode 100644 doc/selectAsSql.png diff --git a/README.md b/README.md index 15ef124..45e1e25 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,55 @@ # mybatis-plus-join + 支持连表查询的[mybatis-plus](https://gitee.com/baomidou/mybatis-plus) ## 运行环境 -* mysql8 -* jdk8 + +* mysql8 +* jdk8 * mybatis-plus 3.4.2 ## 使用方法 -* [参考测试类](https://gitee.com/best_handsome/mybatis-plus-join/blob/master/src/test/java/com/example/mp/MpJoinTest.java) \ No newline at end of file + +### 使用 + +* entity继承MyBaseEntity +* mapper继承MyBaseMapper +* service继承MyBaseService +* serviceImpl继承MyBaseServiceImpl + +### MyLambdaQueryWrapper用法 + +#### select(UserEntity::getId) 查询指定的字段,支持可变参数 + +查询user表中的head_img,name和user_address表中的address,tel +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/select.png) +对应sql +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/selectSql.png) + +#### selectAll(UserEntity.class) 查询UserEntity全部字段 + +查询user全部字段和user_address表中的address,tel +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/selectAll.png) +对应sql +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/selectAllSql.png) + +#### as(UserEntity::getHeadImg,UserDTO::getUserHeadImg) + +查询字段head_img as userHeadImg +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/selectAs.png) +对应sql +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/selectAsSql.png) + +#### 左连接 leftJoin(UserEntity::getId,UserAddressEntity::getUserId,right -> right) + +前连个参数是两个表的连接条件 -> user left join user_address on user.id = User_address.user_id +第三个参数是右表wrapper对象,可以继续使用,以上方法. + +#### 条件查询eq() + +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/selectEq.png) +对应sql +![image](https://gitee.com/best_handsome/mybatis-plus-join/raw/master/doc/selectEqSql.png) + +#### [参考测试类](https://gitee.com/best_handsome/mybatis-plus-join/blob/master/src/test/java/com/example/mp/MpJoinTest.java) + diff --git a/doc/selectAs.png b/doc/selectAs.png new file mode 100644 index 0000000000000000000000000000000000000000..fa1f801a06f1fb02dd1caf6adc19e3687a3f0d30 GIT binary patch literal 12165 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 literal 0 HcmV?d00001 diff --git a/doc/selectAsSql.png b/doc/selectAsSql.png new file mode 100644 index 0000000000000000000000000000000000000000..3b0ed219862704b2ffa08ad98e07a62418d46dc5 GIT binary patch literal 3374 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 In_*-B8-}e;4*&oF literal 0 HcmV?d00001 diff --git a/src/main/java/com/example/mp/business/dto/UserDTO.java b/src/main/java/com/example/mp/business/dto/UserDTO.java index 981b443..9e1faae 100644 --- a/src/main/java/com/example/mp/business/dto/UserDTO.java +++ b/src/main/java/com/example/mp/business/dto/UserDTO.java @@ -12,6 +12,8 @@ public class UserDTO { private String sex; /** user */ private String headImg; + /** user */ + private String userHeadImg;//同 headImg 别名测试 /** user_address */ private String tel; /** user_address */ diff --git a/src/main/java/com/example/mp/mybatis/plus/wrapper/MyJoinLambdaQueryWrapper.java b/src/main/java/com/example/mp/mybatis/plus/wrapper/MyJoinLambdaQueryWrapper.java index 731b37c..674f1b5 100644 --- a/src/main/java/com/example/mp/mybatis/plus/wrapper/MyJoinLambdaQueryWrapper.java +++ b/src/main/java/com/example/mp/mybatis/plus/wrapper/MyJoinLambdaQueryWrapper.java @@ -111,9 +111,9 @@ public class MyJoinLambdaQueryWrapper extends MyAbstract setEntityClass(clazz); TableInfo info = TableInfoHelper.getTableInfo(getEntityClass()); info.getFieldList().forEach(s -> - selectColumnList.add(new SelectColumn(this.rUid, s.getColumn(), s.getColumn()/*s.getProperty()*/, null))); + selectColumnList.add(new SelectColumn(this.rUid, s.getColumn(), null, null))); if (StringUtils.isNotBlank(info.getKeyColumn())) { - selectColumnList.add(new SelectColumn(this.rUid, info.getKeyColumn(),info.getKeyColumn()/* info.getKeyProperty()*/, null)); + selectColumnList.add(new SelectColumn(this.rUid, info.getKeyColumn(), null, null)); } return typedThis; } diff --git a/src/test/java/com/example/mp/MpJoinTest.java b/src/test/java/com/example/mp/MpJoinTest.java index 1021a17..b6a236f 100644 --- a/src/test/java/com/example/mp/MpJoinTest.java +++ b/src/test/java/com/example/mp/MpJoinTest.java @@ -119,9 +119,14 @@ class MpJoinTest { *

* 自己去探索发现吧! */ + @SuppressWarnings("all") @Test void test4() { - //todo + userMapper.selectJoinList(new MyLambdaQueryWrapper() + .as(UserEntity::getHeadImg,UserDTO::getUserHeadImg) + .leftJoin(UserEntity::getId, UserAddressEntity::getUserId, + right -> right.select(UserAddressEntity::getAddress, UserAddressEntity::getTel)) + , UserDTO.class); }