Browse Source

修复逗号写的bug

miemie 6 năm trước cách đây
mục cha
commit
879c5a3bea

+ 36 - 14
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/toolkit/TableInfoHelper.java

@@ -166,27 +166,26 @@ public class TableInfoHelper {
         String prefix = null;
         String prefix = null;
 
 
         if (table != null) {
         if (table != null) {
-            if (StringUtils.isNotEmpty(table.value())) tableName = table.value();
-            if (StringUtils.isNotEmpty(table.prefix())) prefix = table.prefix();
+            if (StringUtils.isNotEmpty(table.value())) {
+                tableName = table.value();
+            } else {
+                tableName = initTableNameWithDbConfig(tableName, dbConfig);
+            }
+            if (StringUtils.isNotEmpty(table.prefix())) {
+                prefix = table.prefix();
+            }
             /* 表结果集映射 */
             /* 表结果集映射 */
             if (StringUtils.isNotEmpty(table.resultMap())) {
             if (StringUtils.isNotEmpty(table.resultMap())) {
                 tableInfo.setResultMap(table.resultMap());
                 tableInfo.setResultMap(table.resultMap());
             }
             }
         } else {
         } else {
-            // 开启表名下划线申明
-            if (dbConfig.isTableUnderline()) {
-                tableName = StringUtils.camelToUnderline(tableName);
-            }
-            // 大写命名判断
-            if (dbConfig.isCapitalMode()) {
-                tableName = tableName.toUpperCase();
-            } else {
-                // 首字母小写
-                tableName = StringUtils.firstToLowerCase(tableName);
-            }
+            tableName = initTableNameWithDbConfig(tableName, dbConfig);
+        }
+
+        if (StringUtils.isEmpty(prefix)) {
+            prefix = dbConfig.getTablePrefix();
         }
         }
 
 
-        if (StringUtils.isEmpty(prefix)) prefix = dbConfig.getTablePrefix();
         tableInfo.setTableName(StringUtils.isEmpty(prefix) ? tableName : (prefix + StringPool.DOT + tableName));
         tableInfo.setTableName(StringUtils.isEmpty(prefix) ? tableName : (prefix + StringPool.DOT + tableName));
 
 
         /* 开启了自定义 KEY 生成器 */
         /* 开启了自定义 KEY 生成器 */
@@ -195,6 +194,29 @@ public class TableInfoHelper {
         }
         }
     }
     }
 
 
+    /**
+     * 根据 DbConfig 初始化 表名
+     *
+     * @param className 类名
+     * @param dbConfig  DbConfig
+     * @return 表名
+     */
+    private static String initTableNameWithDbConfig(String className, GlobalConfig.DbConfig dbConfig) {
+        String tableName = className;
+        // 开启表名下划线申明
+        if (dbConfig.isTableUnderline()) {
+            tableName = StringUtils.camelToUnderline(tableName);
+        }
+        // 大写命名判断
+        if (dbConfig.isCapitalMode()) {
+            tableName = tableName.toUpperCase();
+        } else {
+            // 首字母小写
+            tableName = StringUtils.firstToLowerCase(tableName);
+        }
+        return tableName;
+    }
+
     /**
     /**
      * <p>
      * <p>
      * 初始化 表主键,表字段
      * 初始化 表主键,表字段