|
@@ -35,6 +35,7 @@ import com.baomidou.mybatisplus.generator.config.StrategyConfig;
|
|
|
import com.baomidou.mybatisplus.generator.config.TemplateConfig;
|
|
|
import com.baomidou.mybatisplus.generator.config.po.TableField;
|
|
|
import com.baomidou.mybatisplus.generator.config.po.TableInfo;
|
|
|
+import com.baomidou.mybatisplus.generator.config.rules.DbColumnType;
|
|
|
import com.baomidou.mybatisplus.generator.config.rules.DbType;
|
|
|
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
|
|
|
import com.baomidou.mybatisplus.generator.config.rules.QuerySQL;
|
|
@@ -433,7 +434,7 @@ public class ConfigBuilder {
|
|
|
}
|
|
|
field.setType(results.getString(querySQL.getFieldType()));
|
|
|
field.setPropertyName(processName(field.getName(), strategy));
|
|
|
- field.setPropertyType(processFiledType(field.getType()));
|
|
|
+ field.setColumnType(processFiledType(field.getType()));
|
|
|
field.setComment(results.getString(querySQL.getFieldComment()));
|
|
|
fieldList.add(field);
|
|
|
}
|
|
@@ -481,7 +482,7 @@ public class ConfigBuilder {
|
|
|
*
|
|
|
* @return 转换成JAVA包装类型
|
|
|
*/
|
|
|
- private String processFiledType(String type) {
|
|
|
+ private DbColumnType processFiledType(String type) {
|
|
|
if (QuerySQL.MYSQL == querySQL) {
|
|
|
return processMySqlType(type);
|
|
|
} else if (QuerySQL.ORACLE == querySQL) {
|
|
@@ -491,7 +492,7 @@ public class ConfigBuilder {
|
|
|
} else if (QuerySQL.POSTGRE_SQL == querySQL) {
|
|
|
return processPostgreSQL(type);
|
|
|
}
|
|
|
- return null;
|
|
|
+ return DbColumnType.STRING;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -534,32 +535,32 @@ public class ConfigBuilder {
|
|
|
* 字段类型
|
|
|
* @return JAVA类型
|
|
|
*/
|
|
|
- private String processMySqlType(String type) {
|
|
|
+ private DbColumnType processMySqlType(String type) {
|
|
|
String t = type.toLowerCase();
|
|
|
if (t.contains("char") || t.contains("text")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
} else if (t.contains("bigint")) {
|
|
|
- return "Long";
|
|
|
+ return DbColumnType.LONG;
|
|
|
} else if (t.contains("int")) {
|
|
|
- return "Integer";
|
|
|
+ return DbColumnType.INTEGER;
|
|
|
} else if (t.contains("date") || t.contains("time") || t.contains("year")) {
|
|
|
- return "java.util.Date";
|
|
|
+ return DbColumnType.DATE;
|
|
|
} else if (t.contains("text")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
} else if (t.contains("bit")) {
|
|
|
- return "Boolean";
|
|
|
+ return DbColumnType.BOOLEAN;
|
|
|
} else if (t.contains("decimal")) {
|
|
|
- return "java.math.BigDecimal";
|
|
|
+ return DbColumnType.BIG_DECIMAL;
|
|
|
} else if (t.contains("blob")) {
|
|
|
- return "byte[]";
|
|
|
+ return DbColumnType.BYTE_ARRAY;
|
|
|
} else if (t.contains("float")) {
|
|
|
- return "Float";
|
|
|
+ return DbColumnType.FLOAT;
|
|
|
} else if (t.contains("double")) {
|
|
|
- return "Double";
|
|
|
+ return DbColumnType.DOUBLE;
|
|
|
} else if (t.contains("json") || t.contains("enum")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
}
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -571,27 +572,27 @@ public class ConfigBuilder {
|
|
|
* 字段类型
|
|
|
* @return JAVA类型
|
|
|
*/
|
|
|
- private String processOracleType(String type) {
|
|
|
+ private DbColumnType processOracleType(String type) {
|
|
|
String t = type.toUpperCase();
|
|
|
if (t.contains("CHAR")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
} else if (t.contains("DATE") || t.contains("TIMESTAMP")) {
|
|
|
- return "java.util.Date";
|
|
|
+ return DbColumnType.DATE;
|
|
|
} else if (t.contains("NUMBER")) {
|
|
|
if (t.matches("NUMBER\\(+\\d{1}+\\)")) {
|
|
|
- return "Integer";
|
|
|
+ return DbColumnType.INTEGER;
|
|
|
} else if (t.matches("NUMBER\\(+\\d{2}+\\)")) {
|
|
|
- return "Long";
|
|
|
+ return DbColumnType.LONG;
|
|
|
}
|
|
|
- return "Double";
|
|
|
+ return DbColumnType.DOUBLE;
|
|
|
} else if (t.contains("FLOAT")) {
|
|
|
- return "Float";
|
|
|
+ return DbColumnType.FLOAT;
|
|
|
} else if (t.contains("BLOB")) {
|
|
|
- return "Object";
|
|
|
+ return DbColumnType.OBJECT;
|
|
|
} else if (t.contains("RAW")) {
|
|
|
- return "byte[]";
|
|
|
+ return DbColumnType.BYTE_ARRAY;
|
|
|
}
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -602,30 +603,30 @@ public class ConfigBuilder {
|
|
|
* @param type
|
|
|
* @return
|
|
|
*/
|
|
|
- private String processSQLServerType(String type) {
|
|
|
+ private DbColumnType processSQLServerType(String type) {
|
|
|
String t = type.toLowerCase();
|
|
|
if (t.contains("char") || t.contains("text") || t.contains("xml")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
} else if (t.contains("bigint")) {
|
|
|
- return "Long";
|
|
|
+ return DbColumnType.LONG;
|
|
|
} else if (t.contains("int")) {
|
|
|
- return "Integer";
|
|
|
+ return DbColumnType.INTEGER;
|
|
|
} else if (t.contains("date") || t.contains("time")) {
|
|
|
- return "java.util.Date";
|
|
|
+ return DbColumnType.DATE;
|
|
|
} else if (t.contains("text")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
} else if (t.contains("bit")) {
|
|
|
- return "Boolean";
|
|
|
+ return DbColumnType.BOOLEAN;
|
|
|
}else if (t.contains("decimal")||t.contains("numeric")){
|
|
|
- return "Double";
|
|
|
+ return DbColumnType.DOUBLE;
|
|
|
}else if (t.contains("money")) {
|
|
|
- return "java.math.BigDecimal";
|
|
|
+ return DbColumnType.BIG_DECIMAL;
|
|
|
} else if (t.contains("binary")||t.contains("image")) {
|
|
|
- return "byte[]";
|
|
|
+ return DbColumnType.BYTE_ARRAY;
|
|
|
} else if (t.contains("float")||t.contains("real")) {
|
|
|
- return "Float";
|
|
|
+ return DbColumnType.FLOAT;
|
|
|
}
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
}
|
|
|
|
|
|
|
|
@@ -638,32 +639,32 @@ public class ConfigBuilder {
|
|
|
* 字段类型
|
|
|
* @return JAVA类型
|
|
|
*/
|
|
|
- private String processPostgreSQL(String type) {
|
|
|
+ private DbColumnType processPostgreSQL(String type) {
|
|
|
String t = type.toLowerCase();
|
|
|
if (t.contains("char") || t.contains("text")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
} else if (t.contains("bigint")) {
|
|
|
- return "Long";
|
|
|
+ return DbColumnType.LONG;
|
|
|
} else if (t.contains("int")) {
|
|
|
- return "Integer";
|
|
|
+ return DbColumnType.INTEGER;
|
|
|
} else if (t.contains("date") || t.contains("time") || t.contains("year")) {
|
|
|
- return "java.util.Date";
|
|
|
+ return DbColumnType.DATE;
|
|
|
} else if (t.contains("text")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
} else if (t.contains("bit")) {
|
|
|
- return "Boolean";
|
|
|
+ return DbColumnType.BOOLEAN;
|
|
|
} else if (t.contains("decimal")) {
|
|
|
- return "java.math.BigDecimal";
|
|
|
+ return DbColumnType.BIG_DECIMAL;
|
|
|
} else if (t.contains("blob")) {
|
|
|
- return "byte[]";
|
|
|
+ return DbColumnType.BYTE_ARRAY;
|
|
|
} else if (t.contains("float")) {
|
|
|
- return "Float";
|
|
|
+ return DbColumnType.FLOAT;
|
|
|
} else if (t.contains("double")) {
|
|
|
- return "Double";
|
|
|
+ return DbColumnType.DOUBLE;
|
|
|
} else if (t.contains("json") || t.contains("enum")) {
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
}
|
|
|
- return "String";
|
|
|
+ return DbColumnType.STRING;
|
|
|
}
|
|
|
|
|
|
/**
|