From f72e07e804b5c28d458bc9230857e8f00d3ee449 Mon Sep 17 00:00:00 2001 From: cxc <320522275@qq.com> Date: Tue, 17 Dec 2024 18:12:40 +0800 Subject: [PATCH 1/8] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=89=93=E5=8D=B0banner?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../milvus/plus/config/MilvusPropertiesConfiguration.java | 1 + .../java/org/dromara/milvus/plus/service/MilvusInit.java | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java index da9ef06..5277b9f 100644 --- a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java +++ b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java @@ -22,4 +22,5 @@ public class MilvusPropertiesConfiguration { private List packages; private boolean openLog; private String logLevel; + private boolean isPrintBanner = true; } \ No newline at end of file diff --git a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java index 48dc9e1..b500c23 100644 --- a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java +++ b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java @@ -31,7 +31,7 @@ public class MilvusInit extends AbstractMilvusClientBuilder implements Initializ } public void initialize() { - printBanner(); + maybePrintBanner(); LogLevelController.setLoggingEnabledForPackage("org.dromara.milvus.plus", milvusPropertiesConfiguration.isOpenLog(), milvusPropertiesConfiguration.getLogLevel()); @@ -47,6 +47,12 @@ public class MilvusInit extends AbstractMilvusClientBuilder implements Initializ return client; } + private void maybePrintBanner() { + if (milvusPropertiesConfiguration.isPrintBanner()) { + printBanner(); + } + } + public void printBanner() { String banner = " __ __ _ _ ____ _ \n" + From 3a49969125e8aea534f6917842f470670c899185 Mon Sep 17 00:00:00 2001 From: cxc <320522275@qq.com> Date: Tue, 17 Dec 2024 18:35:31 +0800 Subject: [PATCH 2/8] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=89=93=E5=8D=B0banner?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/milvus/plus/service/MilvusInit.java | 2 +- .../solon/entity/MilvusPropertiesConfiguration.java | 1 + .../main/java/org/dromara/solon/service/MilvusInit.java | 8 +++++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java index b500c23..3d3a06e 100644 --- a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java +++ b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java @@ -47,7 +47,7 @@ public class MilvusInit extends AbstractMilvusClientBuilder implements Initializ return client; } - private void maybePrintBanner() { + public void maybePrintBanner() { if (milvusPropertiesConfiguration.isPrintBanner()) { printBanner(); } diff --git a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java index 0c44129..8b5cb09 100644 --- a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java +++ b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java @@ -22,4 +22,5 @@ public class MilvusPropertiesConfiguration { private List packages; private boolean openLog; private String logLevel; + private boolean isPrintBanner = true; } \ No newline at end of file diff --git a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java index 4b0bcab..a17ed91 100644 --- a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java +++ b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java @@ -16,7 +16,7 @@ public class MilvusInit extends AbstractMilvusClientBuilder implements Lifecycle //see https://solon.noear.org/article/324 @Bean public MilvusClientV2 init(MilvusPropertiesConfiguration milvusPropertiesConfiguration) { - printBanner(); + maybePrintBanner(milvusPropertiesConfiguration); LogLevelController.setLoggingEnabledForPackage("org.dromara.milvus.plus", milvusPropertiesConfiguration.isOpenLog(), milvusPropertiesConfiguration.getLogLevel()); @@ -36,6 +36,12 @@ public class MilvusInit extends AbstractMilvusClientBuilder implements Lifecycle // super.close(); } + public void maybePrintBanner(MilvusPropertiesConfiguration propertiesConfiguration) { + if (propertiesConfiguration.isPrintBanner()) { + printBanner(); + } + } + public void printBanner() { String banner = " __ __ _ _ ____ _ \n" + From 51cc4ed9df1c395c706dbff5a8203b6231119308 Mon Sep 17 00:00:00 2001 From: cxc <320522275@qq.com> Date: Wed, 18 Dec 2024 10:23:08 +0800 Subject: [PATCH 3/8] =?UTF-8?q?update=20=E9=85=8D=E7=BD=AEbanner=E5=B0=86?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=BB=9F=E4=B8=80=E5=91=BD=E5=90=8D=E4=B8=BA?= =?UTF-8?q?banner?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../milvus/plus/config/MilvusPropertiesConfiguration.java | 2 +- .../main/java/org/dromara/milvus/plus/service/MilvusInit.java | 2 +- .../org/dromara/solon/entity/MilvusPropertiesConfiguration.java | 2 +- .../src/main/java/org/dromara/solon/service/MilvusInit.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java index 5277b9f..212c878 100644 --- a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java +++ b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/config/MilvusPropertiesConfiguration.java @@ -22,5 +22,5 @@ public class MilvusPropertiesConfiguration { private List packages; private boolean openLog; private String logLevel; - private boolean isPrintBanner = true; + private boolean banner = true; } \ No newline at end of file diff --git a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java index 3d3a06e..4364dc5 100644 --- a/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java +++ b/milvus-plus-boot-starter/src/main/java/org/dromara/milvus/plus/service/MilvusInit.java @@ -48,7 +48,7 @@ public class MilvusInit extends AbstractMilvusClientBuilder implements Initializ } public void maybePrintBanner() { - if (milvusPropertiesConfiguration.isPrintBanner()) { + if (milvusPropertiesConfiguration.isBanner()) { printBanner(); } } diff --git a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java index 8b5cb09..20196f9 100644 --- a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java +++ b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/entity/MilvusPropertiesConfiguration.java @@ -22,5 +22,5 @@ public class MilvusPropertiesConfiguration { private List packages; private boolean openLog; private String logLevel; - private boolean isPrintBanner = true; + private boolean banner = true; } \ No newline at end of file diff --git a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java index a17ed91..8e3c1e8 100644 --- a/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java +++ b/milvus-plus-solon-plugin/src/main/java/org/dromara/solon/service/MilvusInit.java @@ -37,7 +37,7 @@ public class MilvusInit extends AbstractMilvusClientBuilder implements Lifecycle } public void maybePrintBanner(MilvusPropertiesConfiguration propertiesConfiguration) { - if (propertiesConfiguration.isPrintBanner()) { + if (propertiesConfiguration.isBanner()) { printBanner(); } } From 4c17b0a0038d4be2d035a369ec9b1d56041872a0 Mon Sep 17 00:00:00 2001 From: cxc <320522275@qq.com> Date: Thu, 19 Dec 2024 09:15:09 +0800 Subject: [PATCH 4/8] =?UTF-8?q?fix=20=E6=A0=A1=E9=AA=8CProperty=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E4=B8=BA=E7=A9=BA=EF=BC=8C=E8=A7=A3=E5=86=B3=E5=B0=86?= =?UTF-8?q?=E5=BA=8F=E5=88=97=E5=8C=96=E5=BD=93=E4=BD=9C=E5=AD=97=E6=AE=B5?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plus/core/conditions/LambdaInsertWrapper.java | 4 +++- .../plus/core/conditions/LambdaUpdateWrapper.java | 14 +++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java index ad392c6..1fcc2c5 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java @@ -114,7 +114,9 @@ public class LambdaInsertWrapper extends AbstractChainWrapper implements String key = entry.getKey(); Object value = entry.getValue(); String tk = propertyCache.functionToPropertyMap.get(key); - GsonUtil.put(jsonObject,tk,value); + if (StringUtils.isNotEmpty(tk)) { + GsonUtil.put(jsonObject,tk,value); + } } if(conversionCache.isAutoID()){ GsonUtil.put(jsonObject,pk,IdWorkerUtils.nextId()); diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java index d6dea47..9d9ce56 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java @@ -676,6 +676,9 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W public MilvusResp update(T entity) throws MilvusException { // 获取主键字段 String primaryKeyField = CollectionToPrimaryCache.collectionToPrimary.get(collectionName); + if (StringUtils.isNotEmpty(primaryKeyField)) { + throw new MilvusException("not find primary key", 400); + } // 将实体转换为属性映射 Map propertiesMap = getPropertiesMap(entity); PropertyCache propertyCache = conversionCache.getPropertyCache(); @@ -695,8 +698,11 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W hasPrimaryKey = true; primaryKeyValue = value; } - // 添加到更新对象 - GsonUtil.put(updateObject,tableNameColumn, value); + // 校验是否为空 + if (StringUtils.isNotEmpty(tableNameColumn)) { + // 添加到更新对象 + GsonUtil.put(updateObject,tableNameColumn, value); + } } // 检查是否需要构建查询条件 boolean needBuildQuery = !hasPrimaryKey; @@ -783,7 +789,9 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W Object value = entry.getValue(); // 根据PropertyCache转换属性名 String tk = propertyCache.functionToPropertyMap.get(key); - GsonUtil.put(jsonObject,tk, value); + if (StringUtils.isNotEmpty(tk)) { + GsonUtil.put(jsonObject,tk, value); + } } // 检查是否包含主键 if (!jsonObject.has(pk)) { From de3fb896185808f822c26b51093e499e94844102 Mon Sep 17 00:00:00 2001 From: cxc <320522275@qq.com> Date: Thu, 19 Dec 2024 09:37:47 +0800 Subject: [PATCH 5/8] =?UTF-8?q?Revert=20"fix=20=E6=A0=A1=E9=AA=8CProperty?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E4=B8=BA=E7=A9=BA=EF=BC=8C=E8=A7=A3=E5=86=B3?= =?UTF-8?q?=E5=B0=86=E5=BA=8F=E5=88=97=E5=8C=96=E5=BD=93=E4=BD=9C=E5=AD=97?= =?UTF-8?q?=E6=AE=B5bug"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 4c17b0a0038d4be2d035a369ec9b1d56041872a0. --- .../plus/core/conditions/LambdaInsertWrapper.java | 4 +--- .../plus/core/conditions/LambdaUpdateWrapper.java | 14 +++----------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java index 1fcc2c5..ad392c6 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java @@ -114,9 +114,7 @@ public class LambdaInsertWrapper extends AbstractChainWrapper implements String key = entry.getKey(); Object value = entry.getValue(); String tk = propertyCache.functionToPropertyMap.get(key); - if (StringUtils.isNotEmpty(tk)) { - GsonUtil.put(jsonObject,tk,value); - } + GsonUtil.put(jsonObject,tk,value); } if(conversionCache.isAutoID()){ GsonUtil.put(jsonObject,pk,IdWorkerUtils.nextId()); diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java index 9d9ce56..d6dea47 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java @@ -676,9 +676,6 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W public MilvusResp update(T entity) throws MilvusException { // 获取主键字段 String primaryKeyField = CollectionToPrimaryCache.collectionToPrimary.get(collectionName); - if (StringUtils.isNotEmpty(primaryKeyField)) { - throw new MilvusException("not find primary key", 400); - } // 将实体转换为属性映射 Map propertiesMap = getPropertiesMap(entity); PropertyCache propertyCache = conversionCache.getPropertyCache(); @@ -698,11 +695,8 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W hasPrimaryKey = true; primaryKeyValue = value; } - // 校验是否为空 - if (StringUtils.isNotEmpty(tableNameColumn)) { - // 添加到更新对象 - GsonUtil.put(updateObject,tableNameColumn, value); - } + // 添加到更新对象 + GsonUtil.put(updateObject,tableNameColumn, value); } // 检查是否需要构建查询条件 boolean needBuildQuery = !hasPrimaryKey; @@ -789,9 +783,7 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W Object value = entry.getValue(); // 根据PropertyCache转换属性名 String tk = propertyCache.functionToPropertyMap.get(key); - if (StringUtils.isNotEmpty(tk)) { - GsonUtil.put(jsonObject,tk, value); - } + GsonUtil.put(jsonObject,tk, value); } // 检查是否包含主键 if (!jsonObject.has(pk)) { From 611b691e0f5965e4e1f940d2f9974d4b9caa5aac Mon Sep 17 00:00:00 2001 From: cxc <320522275@qq.com> Date: Thu, 19 Dec 2024 09:42:45 +0800 Subject: [PATCH 6/8] =?UTF-8?q?fix=20=E6=A0=A1=E9=AA=8CProperty=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E4=B8=BA=E7=A9=BA=EF=BC=8C=E8=A7=A3=E5=86=B3=E5=B0=86?= =?UTF-8?q?=E5=BA=8F=E5=88=97=E5=8C=96=E5=BD=93=E4=BD=9C=E5=AD=97=E6=AE=B5?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plus/core/conditions/LambdaInsertWrapper.java | 4 +++- .../plus/core/conditions/LambdaUpdateWrapper.java | 14 +++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java index ad392c6..1fcc2c5 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaInsertWrapper.java @@ -114,7 +114,9 @@ public class LambdaInsertWrapper extends AbstractChainWrapper implements String key = entry.getKey(); Object value = entry.getValue(); String tk = propertyCache.functionToPropertyMap.get(key); - GsonUtil.put(jsonObject,tk,value); + if (StringUtils.isNotEmpty(tk)) { + GsonUtil.put(jsonObject,tk,value); + } } if(conversionCache.isAutoID()){ GsonUtil.put(jsonObject,pk,IdWorkerUtils.nextId()); diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java index d6dea47..9d9ce56 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java @@ -676,6 +676,9 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W public MilvusResp update(T entity) throws MilvusException { // 获取主键字段 String primaryKeyField = CollectionToPrimaryCache.collectionToPrimary.get(collectionName); + if (StringUtils.isNotEmpty(primaryKeyField)) { + throw new MilvusException("not find primary key", 400); + } // 将实体转换为属性映射 Map propertiesMap = getPropertiesMap(entity); PropertyCache propertyCache = conversionCache.getPropertyCache(); @@ -695,8 +698,11 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W hasPrimaryKey = true; primaryKeyValue = value; } - // 添加到更新对象 - GsonUtil.put(updateObject,tableNameColumn, value); + // 校验是否为空 + if (StringUtils.isNotEmpty(tableNameColumn)) { + // 添加到更新对象 + GsonUtil.put(updateObject,tableNameColumn, value); + } } // 检查是否需要构建查询条件 boolean needBuildQuery = !hasPrimaryKey; @@ -783,7 +789,9 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W Object value = entry.getValue(); // 根据PropertyCache转换属性名 String tk = propertyCache.functionToPropertyMap.get(key); - GsonUtil.put(jsonObject,tk, value); + if (StringUtils.isNotEmpty(tk)) { + GsonUtil.put(jsonObject,tk, value); + } } // 检查是否包含主键 if (!jsonObject.has(pk)) { From 7cf972ca7074fa3fcb1f56e8e93c9dd049cb6eec Mon Sep 17 00:00:00 2001 From: xgc Date: Thu, 19 Dec 2024 17:11:14 +0800 Subject: [PATCH 7/8] =?UTF-8?q?fix:=20=E7=BC=93=E5=AD=98=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E5=85=81=E8=AE=B8=E4=B8=BA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/dromara/milvus/plus/cache/PropertyCache.java | 2 ++ .../org/dromara/milvus/plus/converter/MilvusConverter.java | 1 + .../milvus/plus/core/conditions/LambdaUpdateWrapper.java | 6 ++++-- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/cache/PropertyCache.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/cache/PropertyCache.java index 4570f71..c319d24 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/cache/PropertyCache.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/cache/PropertyCache.java @@ -9,6 +9,8 @@ public class PropertyCache { public Map functionToPropertyMap = new HashMap<>(); //属性名称->集合属性名称 + public Map nullableToPropertyMap = new HashMap<>(); //属性名称->是否允许为空 + public Map methodToPropertyMap = new HashMap<>(); //属性get方法名称->集合属性名称 diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/converter/MilvusConverter.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/converter/MilvusConverter.java index f6a8159..3eefe84 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/converter/MilvusConverter.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/converter/MilvusConverter.java @@ -100,6 +100,7 @@ public class MilvusConverter { String fieldName = fieldAnnotation.name().isEmpty() ? field.getName() : fieldAnnotation.name(); // 缓存属性名与函数名的映射 propertyCache.functionToPropertyMap.put(field.getName(), fieldName); + propertyCache.nullableToPropertyMap.put(field.getName(),fieldAnnotation.nullable()); propertyCache.methodToPropertyMap.put(getGetMethodName(field), fieldName); // 处理主键字段 if (fieldAnnotation.isPrimaryKey()) { diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java index 9d9ce56..f02f908 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java @@ -708,7 +708,8 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W boolean needBuildQuery = !hasPrimaryKey; if (hasPrimaryKey) { for (Map.Entry property : propertyCache.functionToPropertyMap.entrySet()) { - if (updateObject.get(property.getValue()) == null) { + Boolean nullable = propertyCache.nullableToPropertyMap.get(property.getKey()); + if (updateObject.get(property.getValue()) == null&&!nullable) { needBuildQuery = true; eq(primaryKeyField,primaryKeyValue); break; @@ -804,7 +805,8 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W for (JsonObject updateObject : jsonObjects) { boolean isBuild=false; for (Map.Entry property : propertyCache.functionToPropertyMap.entrySet()) { - if (updateObject.get(property.getValue()) == null) { + Boolean nullable = propertyCache.nullableToPropertyMap.get(property.getKey()); + if (updateObject.get(property.getValue()) == null&&!nullable) { //缺少数据需要 isBuild=true; } From 5de8c93a6c317c4db8d973cad2cb57492c21b20f Mon Sep 17 00:00:00 2001 From: xgc Date: Mon, 23 Dec 2024 09:42:20 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E5=8F=91=E5=B8=83=202.2.4-M1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- milvus-plus-core/pom.xml | 2 +- milvus-plus-parent/pom.xml | 2 +- milvus-spring-demo/pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/milvus-plus-core/pom.xml b/milvus-plus-core/pom.xml index f8e1b23..acf4224 100644 --- a/milvus-plus-core/pom.xml +++ b/milvus-plus-core/pom.xml @@ -28,7 +28,7 @@ io.milvus milvus-sdk-java - 2.5.1 + 2.5.2 org.apache.logging.log4j diff --git a/milvus-plus-parent/pom.xml b/milvus-plus-parent/pom.xml index 36166a5..9be102a 100644 --- a/milvus-plus-parent/pom.xml +++ b/milvus-plus-parent/pom.xml @@ -30,7 +30,7 @@ - 2.2.3 + 2.2.4-M1 ${java.version} ${java.version} 3.11.0 diff --git a/milvus-spring-demo/pom.xml b/milvus-spring-demo/pom.xml index e211250..c4e033b 100644 --- a/milvus-spring-demo/pom.xml +++ b/milvus-spring-demo/pom.xml @@ -21,7 +21,7 @@ org.dromara.milvus-plus milvus-plus-boot-starter - 2.2.2 + 2.2.4-M1