Pārlūkot izejas kodu

过时ID_WORKER_STR.

聂秋秋 5 gadi atpakaļ
vecāks
revīzija
c935c23ce1

+ 3 - 0
mybatis-plus-annotation/src/main/java/com/baomidou/mybatisplus/annotation/IdType.java

@@ -50,7 +50,10 @@ public enum IdType {
     UUID(4),
     /**
      * 字符串全局唯一ID (idWorker 的字符串表示)
+     *
+     * @deprecated 3.3.0 可使用{@link #ID_WORKER}
      */
+    @Deprecated
     ID_WORKER_STR(5);
 
     private final int key;

+ 6 - 2
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/MybatisDefaultParameterHandler.java

@@ -164,9 +164,13 @@ public class MybatisDefaultParameterHandler extends DefaultParameterHandler {
             /* 自定义 ID */
             if (StringUtils.checkValNull(idValue)) {
                 if (tableInfo.getIdType() == IdType.ID_WORKER) {
-                    metaObject.setValue(tableInfo.getKeyProperty(), idGenerator.nextId(parameterObject));
+                    if (Number.class.isAssignableFrom(tableInfo.getKeyType())) {
+                        metaObject.setValue(tableInfo.getKeyProperty(), idGenerator.nextId(parameterObject));
+                    } else {
+                        metaObject.setValue(tableInfo.getKeyProperty(), String.valueOf(idGenerator.nextId(parameterObject)));
+                    }
                 } else if (tableInfo.getIdType() == IdType.ID_WORKER_STR) {
-                    metaObject.setValue(tableInfo.getKeyProperty(), idGenerator.nextIdStr(parameterObject));
+                    metaObject.setValue(tableInfo.getKeyProperty(), String.valueOf(idGenerator.nextId(parameterObject)));
                 } else if (tableInfo.getIdType() == IdType.UUID) {
                     metaObject.setValue(tableInfo.getKeyProperty(), idGenerator.nextUUID(parameterObject));
                 }

+ 0 - 10
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/incrementer/IdGenerator.java

@@ -35,16 +35,6 @@ public interface IdGenerator {
      */
     Number nextId(Object entity);
 
-    /**
-     * 生成Id {@link IdType#ID_WORKER_STR}
-     *
-     * @param entity 实体
-     * @return id
-     */
-    default String nextIdStr(Object entity) {
-        return String.valueOf(nextId(entity));
-    }
-
     /**
      * 获取uuid {@link IdType#UUID}
      *