mirror of
https://github.com/moshowgame/SpringBootCodeGenerator.git
synced 2025-12-26 05:48:33 +08:00
优化oracle语法
This commit is contained in:
parent
19982259c4
commit
685b952c8f
@ -351,7 +351,10 @@ public class SqlParserServiceImpl implements SqlParserService {
|
||||
} else {
|
||||
fieldName = columnName;
|
||||
}
|
||||
columnLine = columnLine.substring(columnLine.indexOf("`") + 1).trim();
|
||||
// 修复Oracle字段名不带引号的情况
|
||||
if (columnLine.contains("`")) {
|
||||
columnLine = columnLine.substring(columnLine.indexOf("`") + 1).trim();
|
||||
}
|
||||
//2025-03-16 修复由于类型大写导致无法转换的问题
|
||||
String mysqlType = columnLine.split("\\s+")[1].toLowerCase();
|
||||
if(mysqlType.contains("(")){
|
||||
@ -400,6 +403,9 @@ public class SqlParserServiceImpl implements SqlParserService {
|
||||
commentTmp = commentTmp.substring(0, commentTmp.lastIndexOf(")") + 1);
|
||||
}
|
||||
fieldComment = commentTmp;
|
||||
} else if (columnLine.contains("--")) {
|
||||
// 支持Oracle风格的注释(--)
|
||||
fieldComment = columnLine.substring(columnLine.indexOf("--") + 2).trim();
|
||||
} else {
|
||||
//修复comment不存在导致报错的问题
|
||||
fieldComment = columnName;
|
||||
|
||||
@ -27,6 +27,7 @@ public final class mysqlJavaTypeUtil {
|
||||
//字符串
|
||||
mysqlJavaTypeMap.put("char","String");
|
||||
mysqlJavaTypeMap.put("varchar","String");
|
||||
mysqlJavaTypeMap.put("varchar2","String"); // Oracle类型
|
||||
mysqlJavaTypeMap.put("tinytext","String");
|
||||
mysqlJavaTypeMap.put("text","String");
|
||||
mysqlJavaTypeMap.put("mediumtext","String");
|
||||
@ -35,6 +36,8 @@ public final class mysqlJavaTypeUtil {
|
||||
mysqlJavaTypeMap.put("date","Date");
|
||||
mysqlJavaTypeMap.put("datetime","Date");
|
||||
mysqlJavaTypeMap.put("timestamp","Date");
|
||||
// 数字类型 - Oracle增强
|
||||
mysqlJavaTypeMap.put("number","BigDecimal"); // Oracle的NUMBER类型默认映射为BigDecimal,支持精度
|
||||
|
||||
|
||||
mysqlSwaggerTypeMap.put("bigint","integer");
|
||||
@ -46,7 +49,10 @@ public final class mysqlJavaTypeUtil {
|
||||
mysqlSwaggerTypeMap.put("boolean","boolean");
|
||||
mysqlSwaggerTypeMap.put("float","number");
|
||||
mysqlSwaggerTypeMap.put("double","number");
|
||||
mysqlSwaggerTypeMap.put("decimal","Double");
|
||||
mysqlSwaggerTypeMap.put("decimal","number");
|
||||
// Oracle类型
|
||||
mysqlSwaggerTypeMap.put("varchar2","string");
|
||||
mysqlSwaggerTypeMap.put("number","number");
|
||||
}
|
||||
|
||||
public static HashMap<String, String> getMysqlJavaTypeMap() {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user