diff --git a/README.md b/README.md index d61df509a36156b3ab5bdf14781dfe855076ff5f..fcc866ef7825dde1b88fbc74841c4b18a807704e 100644 --- a/README.md +++ b/README.md @@ -109,10 +109,10 @@ Map idUserMap=OneToOne.of(UserInfo::getId).in(userIds).query(); ### 📚包说明 -| 包名 | 内容 | -|---------------|--------------------------| -| stream-query | 优雅的流式操作 | -| stream-plugin | orm框架->使用优雅的Lambda进行对数据库进行一系列操作 | +| 包名 | 内容 | +|---------------|---------------------------------| +| stream-query | 优雅的流式操作 | +| stream-plugin | orm框架->使用优雅的Lambda进行对数据库进行一系列操作 | ### 🐾贡献代码的步骤 diff --git a/stream-core/src/main/java/org/dromara/streamquery/stream/core/business/tree/TreeHelper.java b/stream-core/src/main/java/org/dromara/streamquery/stream/core/business/tree/TreeHelper.java index 71e79bff0544a1f422c3d1fd2e002af28b1ee571..97f0f30ba5f1096b638d8cc080a92ec994228113 100644 --- a/stream-core/src/main/java/org/dromara/streamquery/stream/core/business/tree/TreeHelper.java +++ b/stream-core/src/main/java/org/dromara/streamquery/stream/core/business/tree/TreeHelper.java @@ -180,7 +180,7 @@ public class TreeHelper> { return new ArrayList<>(); } if (Objects.isNull(parentPredicate)) { - final Map> pIdValuesMap = Steam.of(list).nonNull(idGetter::apply).group(pidGetter); + final Map> pIdValuesMap = Steam.of(list).nonNull(idGetter).group(pidGetter); final List parents = pIdValuesMap.getOrDefault(pidValue, new ArrayList<>()); return getTreeSet(level, pIdValuesMap, parents, levelSetter); } diff --git a/stream-core/src/main/java/org/dromara/streamquery/stream/core/enums/JreEnum.java b/stream-core/src/main/java/org/dromara/streamquery/stream/core/enums/JreEnum.java index e4f7d7ef1381ee51b056700bb5d37aa54c6b092a..6adfd03fb30e9c5f55fbaf326ee21b03d12510fd 100644 --- a/stream-core/src/main/java/org/dromara/streamquery/stream/core/enums/JreEnum.java +++ b/stream-core/src/main/java/org/dromara/streamquery/stream/core/enums/JreEnum.java @@ -78,7 +78,7 @@ public enum JreEnum { private static JreEnum getJre() { String version = System.getProperty("java.version"); - boolean isBlank = version == null || version.trim().length() == 0; + boolean isBlank = version == null || version.trim().isEmpty(); if (isBlank) { LOGGER.info("java.version is blank"); } diff --git a/stream-core/src/main/java/org/dromara/streamquery/stream/core/lambda/function/SerPred.java b/stream-core/src/main/java/org/dromara/streamquery/stream/core/lambda/function/SerPred.java index 6e41ad122c201355e0622f86b41bd1c08a3d870b..33d5fe52186155c74c23e1a2a5441f29a830ede4 100644 --- a/stream-core/src/main/java/org/dromara/streamquery/stream/core/lambda/function/SerPred.java +++ b/stream-core/src/main/java/org/dromara/streamquery/stream/core/lambda/function/SerPred.java @@ -40,7 +40,7 @@ public interface SerPred extends Predicate, Serializable { * Objects#equals(Object, Object)}. */ static SerPred isEqual(Object targetRef) { - return (null == targetRef) ? Objects::isNull : object -> targetRef.equals(object); + return (null == targetRef) ? Objects::isNull : targetRef::equals; } /** Evaluates this predicate on the given argument. */ diff --git a/stream-core/src/main/java/org/dromara/streamquery/stream/core/reflect/ReflectHelper.java b/stream-core/src/main/java/org/dromara/streamquery/stream/core/reflect/ReflectHelper.java index a32d8bf5f82c8919af2f9a3b20dfb9216aaf686f..4766c565ce29654333eb0a2c69fa187ee3dd776b 100644 --- a/stream-core/src/main/java/org/dromara/streamquery/stream/core/reflect/ReflectHelper.java +++ b/stream-core/src/main/java/org/dromara/streamquery/stream/core/reflect/ReflectHelper.java @@ -532,7 +532,7 @@ public class ReflectHelper { .forEach( fieldName -> LOGGER.info( - () -> "field " + "" + fieldName + ": " + getFieldValue(obj, fieldName))); + () -> "field " + fieldName + ": " + getFieldValue(obj, fieldName))); LOGGER.info(() -> "no arg methods: "); Steam.of(getMethods(obj.getClass())) .map(Method::getName) diff --git a/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerArgsPredTest.java b/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerArgsPredTest.java index a0573c0aa58d44b9bb476d924eb4fc55bc1d8c43..3d5e22bf73ba4a5c1d6d9a0877869af11f8c1ab9 100644 --- a/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerArgsPredTest.java +++ b/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerArgsPredTest.java @@ -86,13 +86,11 @@ public class SerArgsPredTest { void throwsTest() { Assertions.assertThrows( LambdaInvokeException.class, - () -> { - SerArgsPred.isEqual("foo") - .or( - e -> { - throw new Exception("test"); - }) - .test("bar"); - }); + () -> SerArgsPred.isEqual("foo") + .or( + e -> { + throw new Exception("test"); + }) + .test("bar")); } } diff --git a/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerBiConsTest.java b/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerBiConsTest.java index cc330ef12e472a39f2d771c59c426a03aed5a198..6c46714c18a030d2f4c0a646bd85fed0a7a75f86 100644 --- a/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerBiConsTest.java +++ b/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerBiConsTest.java @@ -62,13 +62,11 @@ public class SerBiConsTest { void throwsTest() { Assertions.assertThrows( LambdaInvokeException.class, - () -> { - SerBiCons.multi( - SerBiCons.nothing(), - (f, b) -> { - throw new Exception("test"); - }) - .accept("foo", "bar"); - }); + () -> SerBiCons.multi( + SerBiCons.nothing(), + (f, b) -> { + throw new Exception("test"); + }) + .accept("foo", "bar")); } } diff --git a/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerConsTest.java b/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerConsTest.java index 45eac600a6088902251076315d927df50a442f59..fd943648a0c2fdf2cd878c885217800d162c29ab 100644 --- a/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerConsTest.java +++ b/stream-core/src/test/java/org/dromara/streamquery/stream/core/lambda/function/SerConsTest.java @@ -40,7 +40,7 @@ class SerConsTest { @Test void multiTest() { val list = Lists.of(); - SerCons.multi(t -> list.add(t), t -> list.add(t + t)).accept("foo"); + SerCons.multi(list::add, t -> list.add(t + t)).accept("foo"); Assertions.assertEquals("foo", list.get(0)); Assertions.assertEquals("foofoo", list.get(1)); } @@ -48,7 +48,7 @@ class SerConsTest { @Test void andThenTest() { val list = Lists.of(); - ((SerCons) t -> list.add(t)).andThen(t -> list.add(t + t)).accept("foo"); + ((SerCons) list::add).andThen(t -> list.add(t + t)).accept("foo"); Assertions.assertEquals("foo", list.get(0)); Assertions.assertEquals("foofoo", list.get(1)); } @@ -56,7 +56,7 @@ class SerConsTest { @Test void acceptingTest() throws Throwable { val list = Lists.of(); - ((SerCons) t -> list.add(t)).accepting("foo"); + ((SerCons) list::add).accepting("foo"); Assertions.assertEquals("foo", list.get(0)); } diff --git a/stream-core/src/test/java/org/dromara/streamquery/stream/core/optional/OppTest.java b/stream-core/src/test/java/org/dromara/streamquery/stream/core/optional/OppTest.java index cd64797225b0f1a8ec357626934f68e01a8a0d96..6c17b344dd68e0236c173877fe7f6f0e00300028 100644 --- a/stream-core/src/test/java/org/dromara/streamquery/stream/core/optional/OppTest.java +++ b/stream-core/src/test/java/org/dromara/streamquery/stream/core/optional/OppTest.java @@ -175,7 +175,6 @@ class OppTest { Assertions.assertTrue(Opp.ofColl(Arrays.asList(null, null, null)).isEmpty()); } - @SuppressWarnings({"MismatchedQueryAndUpdateOfCollection", "ConstantConditions"}) @Test void failOrElseTest() { // 有一些资深的程序员跟我说你这个lambda,双冒号语法糖看不懂... @@ -451,15 +450,11 @@ class OppTest { final AtomicReference oppStrNull = new AtomicReference<>(""); Opp.ofStr(oppStrNull.get()) .orElseRun( - () -> { - oppStrNull.set("stream-query"); - }); + () -> oppStrNull.set("stream-query")); final String elseRun = Opp.ofStr(oppStrNull.get()) .orElseRun( - () -> { - oppStrNull.set(""); - }); + () -> oppStrNull.set("")); Assertions.assertEquals(oppStrNull.get(), "stream-query"); Assertions.assertEquals(elseRun, "stream-query"); } diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/Database.java b/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/Database.java index fb5e3f404070ec9fd9df2b60a68dec93101d71b0..bfc78b6462f959e6e59c77b524598173e72a49d9 100644 --- a/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/Database.java +++ b/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/Database.java @@ -1238,7 +1238,7 @@ public class Database { protected static Class getEntityClass(Collection entityList) { Class entityClass = null; for (T entity : entityList) { - if (entity != null && entity.getClass() != null) { + if (entity != null) { entityClass = SerFunc., Class>cast().apply(entity.getClass()); break; } diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/WrapperHelperTest.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/WrapperHelperTest.java index 51ff4453fed431049532b0c1a8553fa38bcf52cb..02218a71473df8e2adb17b8c66dd2c4506f8484d 100644 --- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/WrapperHelperTest.java +++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/WrapperHelperTest.java @@ -89,15 +89,13 @@ class WrapperHelperTest { WrapperHelper.multi( Wrappers.lambdaQuery(UserInfo.class), dataList, - (wrap, data) -> { - wrap.or( - w -> - w.eq(Objects.nonNull(data.getEmail()), UserInfo::getEmail, data.getEmail()) - .eq( - StringUtils.isNotBlank(data.getName()), - UserInfo::getName, - data.getName())); - }); + (wrap, data) -> wrap.or( + w -> + w.eq(Objects.nonNull(data.getEmail()), UserInfo::getEmail, data.getEmail()) + .eq( + StringUtils.isNotBlank(data.getName()), + UserInfo::getName, + data.getName()))); // ==> Preparing: SELECT id,name,age,email,gmt_deleted FROM user_info WHERE // gmt_deleted='2001-01-01 00:00:00' // AND (((name = ?) OR (email = ?) OR (name = ?))) diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/annotation/pojo/po/UserInfo.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/annotation/pojo/po/UserInfo.java index 7740fda4f4fc9123d1e53158664c7561f0083695..fa709330e6ba0880e0302773a7df6a9a76077c7a 100644 --- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/annotation/pojo/po/UserInfo.java +++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/annotation/pojo/po/UserInfo.java @@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import org.dromara.streamquery.stream.plugin.mybatisplus.engine.mapper.IGenerateMapper; +import java.io.Serializable; import java.time.LocalDateTime; /** @@ -33,7 +34,7 @@ import java.time.LocalDateTime; */ @Data @TableName("user_info") -public class UserInfo implements IGenerateMapper { +public class UserInfo implements IGenerateMapper, Serializable { private static final long serialVersionUID = -7219188882388819210L; diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/issue/gitee/issue17BSNV/UserInfoWithTableAnnotation.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/issue/gitee/issue17BSNV/UserInfoWithTableAnnotation.java index d57afa1f53f04c8721dd9ccfd26eef4492a2efd5..6f72f9b8dd8c9edfe2b0c3765a32e3d8737be84f 100644 --- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/issue/gitee/issue17BSNV/UserInfoWithTableAnnotation.java +++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/issue/gitee/issue17BSNV/UserInfoWithTableAnnotation.java @@ -22,11 +22,12 @@ import com.baomidou.mybatisplus.annotation.TableLogic; import lombok.Data; import org.dromara.streamquery.stream.plugin.mybatisplus.engine.mapper.IGenerateMapper; +import java.io.Serializable; import java.time.LocalDateTime; @Data @Table(value = "user_info") -public class UserInfoWithTableAnnotation implements IGenerateMapper { +public class UserInfoWithTableAnnotation implements IGenerateMapper, Serializable { private static final long serialVersionUID = -7219188882388819210L; @TableId(value = "id", type = IdType.AUTO) diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductCategory.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductCategory.java index fd4fe7a32f38ff4c82494e439216920db83f3211..5a287faf31b5d07d25c3fa305350cbf67b57739a 100644 --- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductCategory.java +++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductCategory.java @@ -21,13 +21,15 @@ import com.baomidou.mybatisplus.annotation.TableId; import lombok.Data; import org.dromara.streamquery.stream.plugin.mybatisplus.issue.gitee.issue17BSNV.Table; +import java.io.Serializable; + /** * @author Cason * @since 2023-06-27 */ @Data @Table("product_category") -public class ProductCategory { +public class ProductCategory implements Serializable { private static final long serialVersionUID = -7219188882388819210L; @TableId(value = "id", type = IdType.AUTO) diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductInfo.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductInfo.java index f0ab2f898179aed6ab9bf08db6153b666333f8ba..b802080ff4f3762627aff77668ddd5ba97eb42f0 100644 --- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductInfo.java +++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ProductInfo.java @@ -22,6 +22,7 @@ import lombok.Data; import org.dromara.streamquery.stream.plugin.mybatisplus.engine.mapper.IGenerateMapper; import org.dromara.streamquery.stream.plugin.mybatisplus.issue.gitee.issue17BSNV.Table; +import java.io.Serializable; import java.math.BigDecimal; /** @@ -30,7 +31,7 @@ import java.math.BigDecimal; */ @Data @Table("product_info") -public class ProductInfo implements IGenerateMapper { +public class ProductInfo implements IGenerateMapper, Serializable { private static final long serialVersionUID = -7219188882388819210L; @TableId(value = "id", type = IdType.AUTO) diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java index 9d3f85a50d4dfa8896fa355d8059457722624813..29824bf8828cac38ac84efc50e255d3c1325912f 100644 --- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java +++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java @@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import org.dromara.streamquery.stream.plugin.mybatisplus.engine.mapper.IGenerateMapper; +import java.io.Serializable; import java.time.LocalDateTime; /** @@ -33,7 +34,7 @@ import java.time.LocalDateTime; */ @Data @TableName("user_info") -public class UserInfo implements IGenerateMapper { +public class UserInfo implements IGenerateMapper, Serializable { private static final long serialVersionUID = -7219188882388819210L;