From 01e12d6a6f5a7b96ecf3bc284e67630da6c9ae24 Mon Sep 17 00:00:00 2001 From: yulichang <570810310@qq.com> Date: Mon, 15 Jan 2024 00:29:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=A8=E9=87=8A=E6=9B=B4=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yulichang/kt/interfaces/QueryLabel.java | 4 +- .../yulichang/query/MPJQueryWrapper.java | 2 +- .../yulichang/toolkit/JoinWrappers.java | 6 +- .../github/yulichang/toolkit/MPJWrappers.java | 4 +- .../yulichang/wrapper/interfaces/Chain.java | 81 +++++++------------ .../yulichang/wrapper/interfaces/Compare.java | 2 +- .../wrapper/interfaces/QueryLabel.java | 38 ++++----- 7 files changed, 59 insertions(+), 78 deletions(-) diff --git a/mybatis-plus-join-core/src/main/java/com/github/yulichang/kt/interfaces/QueryLabel.java b/mybatis-plus-join-core/src/main/java/com/github/yulichang/kt/interfaces/QueryLabel.java index 931fd07..e450196 100644 --- a/mybatis-plus-join-core/src/main/java/com/github/yulichang/kt/interfaces/QueryLabel.java +++ b/mybatis-plus-join-core/src/main/java/com/github/yulichang/kt/interfaces/QueryLabel.java @@ -32,7 +32,7 @@ public interface QueryLabel { *

* 举例 UserDO AddressDO 为一对多关系 UserDTO 为结果类 *

-     *     MPJLambdaQueryWrapper wrapper = new MPJLambdaQueryWrapper();
+     *     MPJLambdaWrapper<UserDO> wrapper = new MPJLambdaWrapper<UserDO>();
      *     wrapper.selectAll(UserDO.class)
      *            .selectCollection(AddressDO.class, UserDTO::getAddressListDTO)
      *            .leftJoin(AddressDO.class, ...... )
@@ -71,7 +71,7 @@ public interface QueryLabel {
      * 

* 举例 UserDO AddressDO 为一对多关系 UserDTO 为结果类 *

-     *   MPJLambdaQueryWrapper wrapper = new MPJLambdaQueryWrapper();
+     *   MPJLambdaWrapper<UserDO> wrapper = new MPJLambdaWrapper();
      *   wrapper.selectAll(UserDO.class)
      *      .selectCollection(AddressDO.class, UserDTO::getAddressListDTO, map -> map
      *           .id(AddressDO::getId, AddressDTO::getId)                 //如果属性名一致 可以传一个
diff --git a/mybatis-plus-join-core/src/main/java/com/github/yulichang/query/MPJQueryWrapper.java b/mybatis-plus-join-core/src/main/java/com/github/yulichang/query/MPJQueryWrapper.java
index a13cabb..a19a16f 100644
--- a/mybatis-plus-join-core/src/main/java/com/github/yulichang/query/MPJQueryWrapper.java
+++ b/mybatis-plus-join-core/src/main/java/com/github/yulichang/query/MPJQueryWrapper.java
@@ -35,7 +35,7 @@ import java.util.stream.Collectors;
 
 /**
  * copy {@link com.baomidou.mybatisplus.core.conditions.query.QueryWrapper}
- * 推荐使用 JoinWrappers.queryJoin();构造
+ * 推荐使用 JoinWrappers.<UserDO>query();构造
  *
  * @author yulichang
  * @see com.github.yulichang.toolkit.JoinWrappers
diff --git a/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/JoinWrappers.java b/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/JoinWrappers.java
index b2eac1e..35895ae 100644
--- a/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/JoinWrappers.java
+++ b/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/JoinWrappers.java
@@ -13,7 +13,7 @@ import com.github.yulichang.wrapper.UpdateJoinWrapper;
 public class JoinWrappers {
 
     /**
-     * JoinWrappers.query()
+     * JoinWrappers.<UserDO>query()
      */
     public static  MPJQueryWrapper query() {
         return new MPJQueryWrapper<>();
@@ -34,14 +34,14 @@ public class JoinWrappers {
     }
 
     /**
-     * JoinWrappers.lambda()
+     * JoinWrappers.<UserDO>lambda()
      */
     public static  MPJLambdaWrapper lambda() {
         return new MPJLambdaWrapper<>();
     }
 
     /**
-     * JoinWrappers.lambda("t")
+     * JoinWrappers.<UserDO>lambda("t")
      */
     public static  MPJLambdaWrapper lambda(String alias) {
         return new MPJLambdaWrapper<>(alias);
diff --git a/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/MPJWrappers.java b/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/MPJWrappers.java
index 13abf50..ef034d8 100644
--- a/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/MPJWrappers.java
+++ b/mybatis-plus-join-core/src/main/java/com/github/yulichang/toolkit/MPJWrappers.java
@@ -13,7 +13,7 @@ import com.github.yulichang.wrapper.MPJLambdaWrapper;
 public class MPJWrappers {
 
     /**
-     * MPJWrappers.queryJoin()
+     * MPJWrappers.<UserDO>query()
      */
     public static  MPJQueryWrapper queryJoin() {
         return new MPJQueryWrapper<>();
@@ -28,7 +28,7 @@ public class MPJWrappers {
     }
 
     /**
-     * MPJWrappers.lambdaJoin()
+     * MPJWrappers.<UserDO>lambda()
      */
     public static  MPJLambdaWrapper lambdaJoin() {
         return new MPJLambdaWrapper<>();
diff --git a/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Chain.java b/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Chain.java
index 404f8ba..5c15dc4 100644
--- a/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Chain.java
+++ b/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Chain.java
@@ -12,11 +12,10 @@ import java.util.List;
 
 /**
  * 链式调用
- * 构造方法必须传 class 或 entity 否则会报错
- * new MPJLambdaWrapper(User.class)
- * new MPJQueryWrapper(User.class)
- * JoinWrappers.\lambdaJoin(User.class)
- * JoinWrappers.\queryJoin(User.class)
+ * 

+ * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
* * @author yulichang * @since 1.4.4 @@ -29,11 +28,9 @@ public interface Chain { /** * 链式调用 等效于MP mapper的 selectCount() *

- * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default Long count() { return SqlHelper.exec(getEntityClass(), mapper -> { @@ -45,11 +42,9 @@ public interface Chain { /** * 链式调用 等效于 selectOne *

- * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default T one() { return SqlHelper.exec(getEntityClass(), mapper -> mapper.selectOne((Wrapper) this)); @@ -58,11 +53,9 @@ public interface Chain { /** * 链式调用 等效于 selectJoinOne *

- * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default R one(Class resultType) { return SqlHelper.execJoin(getEntityClass(), mapper -> mapper.selectJoinOne(resultType, (MPJBaseJoin) this)); @@ -71,11 +64,9 @@ public interface Chain { /** * 链式调用 查询列表第一个 匹配多个不会抛异常 *

- * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default T first() { List list = list(); @@ -85,11 +76,9 @@ public interface Chain { /** * 链式调用 查询列表第一个 匹配多个不会抛异常 *

- * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default R first(Class resultType) { List list = list(resultType); @@ -98,11 +87,9 @@ public interface Chain { /** * 链式调用 - * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default List list() { return SqlHelper.exec(getEntityClass(), mapper -> mapper.selectList((Wrapper) this)); @@ -110,11 +97,9 @@ public interface Chain { /** * 链式调用 - * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default List list(Class resultType) { return SqlHelper.execJoin(getEntityClass(), mapper -> mapper.selectJoinList(resultType, (MPJBaseJoin) this)); @@ -122,11 +107,9 @@ public interface Chain { /** * 链式调用 - * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default

> P page(P page) { return SqlHelper.exec(getEntityClass(), mapper -> mapper.selectPage(page, (Wrapper) this)); @@ -134,11 +117,9 @@ public interface Chain { /** * 链式调用 - * 构造方法必须传 class 或 entity 否则会报错 - * new MPJLambdaWrapper(User.class) - * new MPJQueryWrapper(User.class) - * JoinWrappers.\lambdaJoin(User.class) - * JoinWrappers.\queryJoin(User.class) + * 构造方法必须传 class 或 entity 否则会报错
+ * new MPJLambdaWrapper(User.class)
+ * JoinWrappers.lambda(User.class)
*/ default > P page(P page, Class resultType) { return SqlHelper.execJoin(getEntityClass(), mapper -> mapper.selectJoinPage(page, resultType, (MPJBaseJoin) this)); diff --git a/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Compare.java b/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Compare.java index d514904..a9bd165 100644 --- a/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Compare.java +++ b/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/Compare.java @@ -29,7 +29,7 @@ public interface Compare extends Serializable { * * @param condition 执行条件 * @param params map 类型的参数, key 是字段名, value 是字段值 - * @param null2IsNull 是否参数为 null 自动执行 isNull 方法, false 则忽略这个字段\ + * @param null2IsNull 是否参数为 null 自动执行 isNull 方法, false 则忽略这个字段 * @return children */ Children allEq(boolean condition, Map, V> params, boolean null2IsNull); diff --git a/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/QueryLabel.java b/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/QueryLabel.java index 0f0d6c0..b175059 100644 --- a/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/QueryLabel.java +++ b/mybatis-plus-join-core/src/main/java/com/github/yulichang/wrapper/interfaces/QueryLabel.java @@ -28,18 +28,18 @@ public interface QueryLabel { Children getChildren(); /** - * 一对多查询 调用此方法发必需要调用对应的 left join / right join ... 连表方法,否则会报错 + * 一对多查询 调用此方法必需要调用对应的 left join / right join ... 连表方法,否则会报错 *

* 举例 UserDO AddressDO 为一对多关系 UserDTO 为结果类 *

-     *     MPJLambdaQueryWrapper wrapper = new MPJLambdaQueryWrapper();
+     *     MPJLambdaWrapper<UserDO> wrapper = new MPJLambdaWrapper<UserDO>();
      *     wrapper.selectAll(UserDO.class)
      *            .selectCollection(AddressDO.class, UserDTO::getAddressListDTO)
      *            .leftJoin(AddressDO.class, ...... )
      *            .eq(...)
      *            ...
      * 
-     * 会自动将 AddressDO类中相同属性的字段 以mybatis的方式映射到UserDTO.addressListDTO属性中
+     * 会自动将 AddressDO类中相同属性的字段 以mybatis<collection>的方式映射到UserDTO.addressListDTO属性中
      *
      * @since 1.3.0
      *
@@ -50,11 +50,11 @@ public interface QueryLabel {
      * @param       包装类集合泛型
      * @param       包装类集合字段泛型
      */
-    default > Children selectCollection(Class child, SFunction dtoField) {
+    default > Children selectCollection(Class child, SFunction dtoField) {
         return selectCollection(null, child, dtoField);
     }
 
-    default > Children selectCollection(String prefix, Class child, SFunction dtoField) {
+    default > Children selectCollection(String prefix, Class child, SFunction dtoField) {
         String dtoFieldName = LambdaUtils.getName(dtoField);
         Class dtoClass = LambdaUtils.getEntityClass(dtoField);
         Map fieldMap = MPJReflectionKit.getFieldMap(dtoClass);
@@ -73,22 +73,22 @@ public interface QueryLabel {
     }
 
     /**
-     * 一对多查询 调用此方法发必需要调用对应的 left join / right join ... 连表方法,否则会报错
+     * 一对多查询 调用此方法必需要调用对应的 left join / right join ... 连表方法,否则会报错
      * 

* 举例 UserDO AddressDO 为一对多关系 UserDTO 为结果类 *

-     *   MPJLambdaQueryWrapper wrapper = new MPJLambdaQueryWrapper();
-     *   wrapper.selectAll(UserDO.class)
+     *   MPJLambdaWrapper<UserDO> wrapper = new MPJLambdaWrapper<UserDO>()
+     *      .selectAll(UserDO.class)
      *      .selectCollection(AddressDO.class, UserDTO::getAddressListDTO, map -> map
      *           .id(AddressDO::getId, AddressDTO::getId)                 //如果属性名一致 可以传一个
      *           .result(AddressDO::getUserId)                            //如果属性名一致 可以传一个
-     *           .result(AddressDO::getAddress, AddressDTO::getAddress))) //如果属性名一致 可以传一个
+     *           .result(AddressDO::getAddress, AddressDTO::getAddress))  //如果属性名一致 可以传一个
      *      .leftJoin(AddressDO.class, ...... )
      *      .eq(...)
      *      ...
      * 
      *
-     * 会自动将 AddressDO类中指定的字段 以mybatis的方式映射到UserDTO.addressListDTO属性中
+     * 会自动将 AddressDO类中指定的字段 以mybatis<collection>的方式映射到UserDTO.addressListDTO属性中
      *
      * @since 1.3.0
      *
@@ -100,14 +100,14 @@ public interface QueryLabel {
      * @param         包装类集合泛型
      * @param         包装类集合字段泛型
      */
-    default > Children selectCollection(Class child,
-                                                                                   SFunction dtoField,
-                                                                                   MFunc> collection) {
+    default > Children selectCollection(Class child,
+                                                                         SFunction dtoField,
+                                                                         MFunc> collection) {
         return selectCollection(null, child, dtoField, collection);
     }
 
-    default > Children selectCollection(SFunction dtoField,
-                                                                                MFunc> collection) {
+    default > Children selectCollection(SFunction dtoField,
+                                                                      MFunc> collection) {
         //自由映射必须存在泛型Z
         String dtoFieldName = LambdaUtils.getName(dtoField);
         Class dtoClass = LambdaUtils.getEntityClass(dtoField);
@@ -121,10 +121,10 @@ public interface QueryLabel {
         return getChildren();
     }
 
-    default > Children selectCollection(String prefix,
-                                                                                   Class child,
-                                                                                   SFunction dtoField,
-                                                                                   MFunc> collection) {
+    default > Children selectCollection(String prefix,
+                                                                         Class child,
+                                                                         SFunction dtoField,
+                                                                         MFunc> collection) {
         String dtoFieldName = LambdaUtils.getName(dtoField);
         Class dtoClass = LambdaUtils.getEntityClass(dtoField);
         FieldCache field = MPJReflectionKit.getFieldMap(dtoClass).get(dtoFieldName);