Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 9f54fbf

Browse files
author
杨利兵
committed
v4.1.0
改进dml生成功能
1 parent b2ceca8 commit 9f54fbf

File tree

5 files changed

+37
-3
lines changed

5 files changed

+37
-3
lines changed

‎src/main/java/com/yanglb/codegen/core/parser/impl/DmlParser.java‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,23 @@
1616
package com.yanglb.codegen.core.parser.impl;
1717

1818
import com.yanglb.codegen.core.parser.BaseParser;
19+
import org.apache.commons.cli.Option;
20+
import org.apache.commons.cli.Options;
1921

2022
public class DmlParser extends BaseParser {
23+
@Override
24+
protected Options options() {
25+
Options options = super.options();
26+
27+
Option target = Option.builder()
28+
.longOpt("target")
29+
.hasArg()
30+
.desc("指定生成目标,可选 mysql/mssql/sqlite,默认为mysql")
31+
.build();
32+
options.addOption(target);
33+
return options;
34+
}
35+
2136
@Override
2237
protected boolean headerHelp() {
2338
System.out.println("生成初始数据SQL脚本,用于向数据添加初始数据。");

‎src/main/java/com/yanglb/codegen/core/translator/BaseSqlTranslator.java‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717

1818
import java.util.List;
1919

20-
import com.yanglb.codegen.exceptions.CodeGenException;
21-
2220
public class BaseSqlTranslator<T> extends BaseTranslator<List<T>> {
2321
// 列引号字符,如:SQL Server为[], MySQL为`等
2422
protected String sqlColumnStart = "\"";

‎src/main/java/com/yanglb/codegen/core/translator/impl/DdlSqliteTranslatorImpl.java‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@
2828

2929
public class DdlSqliteTranslatorImpl extends BaseDdlTranslator {
3030

31+
public DdlSqliteTranslatorImpl() {
32+
this.sqlColumnStart = "\"";
33+
this.sqlColumnEnd = "\"";
34+
}
35+
3136
@Override
3237
protected void onBeforeTranslate() throws CodeGenException {
3338
super.onBeforeTranslate();

‎src/main/java/com/yanglb/codegen/core/translator/impl/DmlTranslatorImpl.java‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,22 @@ protected void onBeforeTranslate() throws CodeGenException {
4141
fileName = fileName.substring(0, index);
4242
}
4343
this.writableModel.setFileName(fileName);
44+
45+
String target = parameterModel.getOptions().getOptionValue("target", "mysql");
46+
switch (target) {
47+
case "mysql":
48+
sqlColumnStart = "`";
49+
sqlColumnEnd = "`";
50+
break;
51+
case "mssql":
52+
sqlColumnStart = "[";
53+
sqlColumnEnd = "[";
54+
break;
55+
case "sqlite":
56+
sqlColumnStart = "\"";
57+
sqlColumnEnd = "\"";
58+
break;
59+
}
4460
}
4561

4662
@Override

‎src/main/java/com/yanglb/codegen/utils/Infos.java‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
public class Infos {
1919
public static final String Name = "Code Generator";
20-
public static final String Version = "4.0.3";
20+
public static final String Version = "4.1.0";
2121
public static final String Copyright = "Copyright 2015-2020 yanglb.com All Rights Reserved.";
2222
public static final String Author = "me@yanglb.com";
2323
public static final String Website = "https://yanglb.com";

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /