From f16f2642e6b1987bdd221697fc9aefbc03c260eb Mon Sep 17 00:00:00 2001 From: caoshd Date: Sun, 31 Mar 2024 04:11:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96:=20=E5=A1=AB=E5=85=85?= =?UTF-8?q?=E7=94=9F=E6=88=90=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 10 +- .../caoshd/otone/aware/ColumnCreateAware.java | 9 - .../caoshd/otone/aware/TableCreateAware.java | 9 - .../caoshd/otone/builder/ColumnBuilder.java | 14 +- .../caoshd/otone/builder/OutputBuilder.java | 12 +- .../caoshd/otone/builder/SourceBuilder.java | 53 ++- .../caoshd/otone/builder/TableBuilder.java | 33 +- .../space/caoshd/otone/entity/ColumnInfo.java | 8 - .../space/caoshd/otone/entity/OutputInfo.java | 21 +- .../space/caoshd/otone/entity/TableInfo.java | 67 +++- .../space/caoshd/otone/util/CfgUtils.java | 326 +++++++++++------- .../caoshd/otone/util/VelocityUtils.java | 9 +- .../otone/builder/ColumnBuilderTest.java | 7 +- .../otone/builder/SourceBuilderTest.java | 10 +- .../otone/builder/TableBuilderTest.java | 12 +- .../caoshd/otone/tool/PropToolsTest.java | 23 +- .../space/caoshd/otone/util/CfgUtilsTest.java | 21 +- .../space/caoshd/otone/util/DBUtilsTest.java | 10 +- .../space/caoshd/otone/util/ResUtilsTest.java | 8 +- .../space/caoshd/otone/util/StrUtilsTest.java | 15 +- src/test/resources/config/config.properties | 67 ++-- src/test/resources/template/controller.vm | 4 + src/test/resources/template/form.vm | 4 + src/test/resources/template/mapper.vm | 4 + src/test/resources/template/po.vm | 5 +- src/test/resources/template/query.vm | 4 + .../resources/template/service.interface.vm | 4 + src/test/resources/template/service.vm | 4 + src/test/resources/template/view.vm | 5 +- 29 files changed, 459 insertions(+), 319 deletions(-) delete mode 100644 src/main/java/space/caoshd/otone/aware/ColumnCreateAware.java delete mode 100644 src/main/java/space/caoshd/otone/aware/TableCreateAware.java diff --git a/pom.xml b/pom.xml index 6ce335a..a24a722 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ ch.qos.logback logback-classic - 1.4.14 + 1.3.14 org.apache.velocity @@ -36,13 +36,13 @@ fastjson 2.0.48 - - org.junit.jupiter - junit-jupiter - RELEASE + junit + junit + 4.13.1 test + \ No newline at end of file diff --git a/src/main/java/space/caoshd/otone/aware/ColumnCreateAware.java b/src/main/java/space/caoshd/otone/aware/ColumnCreateAware.java deleted file mode 100644 index 5b0954a..0000000 --- a/src/main/java/space/caoshd/otone/aware/ColumnCreateAware.java +++ /dev/null @@ -1,9 +0,0 @@ -package space.caoshd.otone.aware; - -import space.caoshd.otone.entity.ColumnInfo; - -import java.util.Map; - -public interface ColumnCreateAware { - void addon(ColumnInfo tableInfo, Map addInfo); -} diff --git a/src/main/java/space/caoshd/otone/aware/TableCreateAware.java b/src/main/java/space/caoshd/otone/aware/TableCreateAware.java deleted file mode 100644 index 3de567f..0000000 --- a/src/main/java/space/caoshd/otone/aware/TableCreateAware.java +++ /dev/null @@ -1,9 +0,0 @@ -package space.caoshd.otone.aware; - -import space.caoshd.otone.entity.TableInfo; - -import java.util.Map; - -public interface TableCreateAware { - void addon(TableInfo tableInfo, Map addInfo); -} diff --git a/src/main/java/space/caoshd/otone/builder/ColumnBuilder.java b/src/main/java/space/caoshd/otone/builder/ColumnBuilder.java index f2f894b..097781b 100644 --- a/src/main/java/space/caoshd/otone/builder/ColumnBuilder.java +++ b/src/main/java/space/caoshd/otone/builder/ColumnBuilder.java @@ -2,7 +2,6 @@ package space.caoshd.otone.builder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import space.caoshd.otone.aware.ColumnCreateAware; import space.caoshd.otone.entity.ColumnInfo; import space.caoshd.otone.tool.PropTools; import space.caoshd.otone.util.DBUtils; @@ -21,23 +20,16 @@ public class ColumnBuilder { private static final Logger LOGGER = LoggerFactory.getLogger(ColumnBuilder.class); - private static final PropTools CONFIG = - new PropTools(PathConsts.MYSQL_PROPERTIES_PATH); + private static final PropTools CONFIG = new PropTools(PathConsts.MYSQL_PROPERTIES_PATH); private final String schemaName; private final String tableName; - private final List columnCreateAwares = new ArrayList<>(); public ColumnBuilder(String schemaName, String tableName) { this.schemaName = schemaName; this.tableName = tableName; } - public ColumnBuilder addColumnAddonAble(ColumnCreateAware columnCreateAware) { - this.columnCreateAwares.add(columnCreateAware); - return this; - } - public List build() { String sql = CONFIG.getString(SqlConsts.COLUMN_SQL_SCHEMA_TABLE); List params = Arrays.asList(schemaName, tableName); @@ -65,10 +57,6 @@ public class ColumnBuilder { String extra = CONFIG.getString(SqlConsts.LABEL_EXTRA); result.setAutoIncrement(column.get(extra).contains(SqlConsts.VALUE_AUTO_INCREMENT)); - for (ColumnCreateAware columnCreateAware : columnCreateAwares) { - columnCreateAware.addon(result, result.getAddonInfo()); - } - LOGGER.debug(JsonUtils.toJson(result)); return result; } diff --git a/src/main/java/space/caoshd/otone/builder/OutputBuilder.java b/src/main/java/space/caoshd/otone/builder/OutputBuilder.java index a3df265..8e2eba3 100644 --- a/src/main/java/space/caoshd/otone/builder/OutputBuilder.java +++ b/src/main/java/space/caoshd/otone/builder/OutputBuilder.java @@ -14,13 +14,11 @@ public class OutputBuilder { return this; } - public OutputBuilder setTemplatePath(String templatePath) { this.outputInfo.setTemplatePath(templatePath); return this; } - public OutputBuilder setPackagePath(String packagePath) { this.outputInfo.setPackagePath(packagePath); return this; @@ -31,6 +29,16 @@ public class OutputBuilder { return this; } + public OutputBuilder setNamePrefix(String namePrefix) { + this.outputInfo.setNamePrefix(namePrefix); + return this; + } + + public OutputBuilder setPackageName(String packageName) { + this.outputInfo.setPackageName(packageName); + return this; + } + public OutputInfo build() { return outputInfo; } diff --git a/src/main/java/space/caoshd/otone/builder/SourceBuilder.java b/src/main/java/space/caoshd/otone/builder/SourceBuilder.java index d67db97..83ffebd 100644 --- a/src/main/java/space/caoshd/otone/builder/SourceBuilder.java +++ b/src/main/java/space/caoshd/otone/builder/SourceBuilder.java @@ -12,7 +12,9 @@ import space.caoshd.otone.util.VelocityUtils; import java.util.Arrays; import java.util.Collections; +import java.util.HashMap; import java.util.List; +import java.util.Map; public class SourceBuilder { @@ -28,6 +30,8 @@ public class SourceBuilder { private List outputInfoList; + private final Map extra = new HashMap<>(); + public SourceBuilder setTableInfo(TableInfo tableInfo) { this.tableInfo = tableInfo; return this; @@ -48,6 +52,16 @@ public class SourceBuilder { return this; } + public SourceBuilder setExtra(Map extra) { + this.extra.putAll(extra); + return this; + } + + public SourceBuilder addExtra(String key, Object data) { + this.extra.put(key, data); + return this; + } + public void build() { if (tableInfo != null) { // 设定单个表 则不使用全部表 @@ -75,14 +89,23 @@ public class SourceBuilder { } private void build(TableInfo tableInfo, OutputInfo outputInfo) { + // 获取表信息 配置信息 + String beanName = tableInfo.getClassName(); + String nameSuffix = outputInfo.getNameSuffix(); + String namePrefix = outputInfo.getNamePrefix(); + String packagePath = outputInfo.getPackagePath(); + String packageName = outputInfo.getPackageName(); + + // 添加附加信息 + tableInfo.setExtra(extra); + tableInfo.setClassNameSuffix(nameSuffix); + tableInfo.setClassNamePrefix(namePrefix); + tableInfo.setPackageName(packageName); + // 创建数据文件夹 - FileUtils.mkdir(outputInfo.getPackagePath()); + FileUtils.mkdir(packagePath); // 获取输出文件路径 - String outputPath = CfgUtils.getOutputPath( - outputInfo.getPackagePath(), - tableInfo.getBeanName(), - outputInfo.getNameSuffix() - ); + String outputPath = CfgUtils.getJavaFilePath(packagePath, beanName, nameSuffix, namePrefix); // 获取模板文件路径 String templatePath = outputInfo.getTemplatePath(); // 判断输出文件是否已存在 @@ -96,9 +119,7 @@ public class SourceBuilder { VelocityUtils.render(CfgUtils.VALUE_TABLE, tableInfo, templatePath, outputPath); } else { // 配置不可以执行覆盖 提示错误消息 - LOGGER.warn( - "output file already exists: {}, " + "please remove it or enable auto " - + "cover exist file," + LOGGER.warn("output file already exists: {}, " + "please remove it or enable auto " + "cover exist file," + " config.properties should like [output.cover_if_exists=true]", outputPath ); @@ -119,36 +140,50 @@ public class SourceBuilder { new OutputBuilder().setNameSuffix(CfgUtils.getPoNameSuffix()) .setTemplatePath(CfgUtils.getPoTemplatePath()) .setPackagePath(CfgUtils.getPoPackagePath()) + .setPackageName(CfgUtils.getPoPackageName()) .build(), // MAPPER new OutputBuilder().setNameSuffix(CfgUtils.getMapperNameSuffix()) .setTemplatePath(CfgUtils.getMapperTemplatePath()) .setPackagePath(CfgUtils.getMapperPackagePath()) + .setPackageName(CfgUtils.getMapperPackageName()) .build(), // SERVICE new OutputBuilder().setNameSuffix(CfgUtils.getServiceNameSuffix()) .setTemplatePath(CfgUtils.getServiceTemplatePath()) .setPackagePath(CfgUtils.getServicePackagePath()) + .setPackageName(CfgUtils.getServicePackageName()) + .build(), + // SERVICE INTERFACE + new OutputBuilder().setNameSuffix(CfgUtils.getServiceNameSuffix()) + .setNamePrefix(CfgUtils.getServiceInterfacePrefix()) + .setTemplatePath(CfgUtils.getServiceInterfaceTemplatePath()) + .setPackagePath(CfgUtils.getServiceInterfacePackagePath()) + .setPackageName(CfgUtils.getServiceInterfacePackageName()) .build(), // CONTROLLER new OutputBuilder().setNameSuffix(CfgUtils.getControllerNameSuffix()) .setTemplatePath(CfgUtils.getControllerTemplatePath()) .setPackagePath(CfgUtils.getControllerPackagePath()) + .setPackageName(CfgUtils.getControllerPackageName()) .build(), // VIEW new OutputBuilder().setNameSuffix(CfgUtils.getViewNameSuffix()) .setTemplatePath(CfgUtils.getViewTemplatePath()) .setPackagePath(CfgUtils.getViewPackagePath()) + .setPackageName(CfgUtils.getViewPackageName()) .build(), // FORM new OutputBuilder().setNameSuffix(CfgUtils.getFormNameSuffix()) .setTemplatePath(CfgUtils.getFormTemplatePath()) .setPackagePath(CfgUtils.getFormPackagePath()) + .setPackageName(CfgUtils.getFormPackageName()) .build(), // QUERY new OutputBuilder().setNameSuffix(CfgUtils.getQueryNameSuffix()) .setTemplatePath(CfgUtils.getQueryTemplatePath()) .setPackagePath(CfgUtils.getQueryPackagePath()) + .setPackageName(CfgUtils.getQueryPackageName()) .build() ); } diff --git a/src/main/java/space/caoshd/otone/builder/TableBuilder.java b/src/main/java/space/caoshd/otone/builder/TableBuilder.java index c9d3bed..ac1cc5c 100644 --- a/src/main/java/space/caoshd/otone/builder/TableBuilder.java +++ b/src/main/java/space/caoshd/otone/builder/TableBuilder.java @@ -2,8 +2,6 @@ package space.caoshd.otone.builder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import space.caoshd.otone.aware.ColumnCreateAware; -import space.caoshd.otone.aware.TableCreateAware; import space.caoshd.otone.entity.ColumnInfo; import space.caoshd.otone.entity.IndexInfo; import space.caoshd.otone.entity.TableInfo; @@ -24,7 +22,6 @@ import java.util.List; import java.util.Map; import java.util.Objects; - public class TableBuilder { private static final Logger LOGGER = LoggerFactory.getLogger(TableBuilder.class); @@ -33,19 +30,6 @@ public class TableBuilder { private static final PropTools CONFIG = new PropTools(PathConsts.CONFIG_PROPERTIES_PATH); - private final List tableCreateAwares = new ArrayList<>(); - private final List columnCreateAwares = new ArrayList<>(); - - public TableBuilder addTableAddonAble(TableCreateAware tableCreateAware) { - this.tableCreateAwares.add(tableCreateAware); - return this; - } - - public TableBuilder addColumnAddonAble(ColumnCreateAware columnCreateAware) { - this.columnCreateAwares.add(columnCreateAware); - return this; - } - public List build() { List result = new ArrayList<>(); List schemaNames = CONFIG.getStrings(CfgUtils.DATABASE_NAME_SCHEMAS); @@ -113,13 +97,14 @@ public class TableBuilder { String tableNameWithoutPrefix = getTableNameWithoutPrefix(result.getTableName()); String beanName = StrUtils.toCamelCase(tableNameWithoutPrefix, true); - result.setBeanName(beanName); + result.setClassName(beanName); List columnInfo = loadColumnInfo(tableSchema, tableName); - result.setColumnInfo(columnInfo); + result.setColumns(columnInfo); result.setDateExists(columnInfo.stream() .anyMatch(column -> TypeUtils.JAVA_TYPE_DATE.equals(column.getJavaDataType()))); + result.setDecimalExists(columnInfo.stream() .anyMatch(column -> TypeUtils.JAVA_TYPE_DECIMAL.equals(column.getJavaDataType()))); @@ -141,22 +126,14 @@ public class TableBuilder { indexColumnInfoList.add(columnInfoByColumnName); }); - result.setIndexInfo(indexInfo); - - for (TableCreateAware tableCreateAware : tableCreateAwares) { - tableCreateAware.addon(result, result.getAddonInfo()); - } + result.setIndexes(indexInfo); LOGGER.debug(JsonUtils.toJson(result)); return result; } private List loadColumnInfo(String tableSchema, String tableName) { - ColumnBuilder columnBuilder = new ColumnBuilder(tableSchema, tableName); - for (ColumnCreateAware columnCreateAware : columnCreateAwares) { - columnBuilder.addColumnAddonAble(columnCreateAware); - } - return columnBuilder.build(); + return new ColumnBuilder(tableSchema, tableName).build(); } private ColumnInfo getColumnInfoByColumnName( diff --git a/src/main/java/space/caoshd/otone/entity/ColumnInfo.java b/src/main/java/space/caoshd/otone/entity/ColumnInfo.java index ae12fc9..692b174 100644 --- a/src/main/java/space/caoshd/otone/entity/ColumnInfo.java +++ b/src/main/java/space/caoshd/otone/entity/ColumnInfo.java @@ -1,11 +1,7 @@ package space.caoshd.otone.entity; -import java.util.HashMap; -import java.util.Map; - public class ColumnInfo { - private final Map addonInfo = new HashMap<>(); private String columnName; private String propertyName; private String sqlDataType; @@ -60,8 +56,4 @@ public class ColumnInfo { public void setAutoIncrement(Boolean autoIncrement) { this.autoIncrement = autoIncrement; } - - public Map getAddonInfo() { - return addonInfo; - } } diff --git a/src/main/java/space/caoshd/otone/entity/OutputInfo.java b/src/main/java/space/caoshd/otone/entity/OutputInfo.java index a6c8e10..ee4f093 100644 --- a/src/main/java/space/caoshd/otone/entity/OutputInfo.java +++ b/src/main/java/space/caoshd/otone/entity/OutputInfo.java @@ -8,9 +8,13 @@ public class OutputInfo { private String templatePath; + private String packageName; + private String packagePath; - private String nameSuffix; + private String nameSuffix = ""; + + private String namePrefix = ""; public List getTableInfoList() { return tableInfoList; @@ -28,6 +32,14 @@ public class OutputInfo { this.templatePath = templatePath; } + public String getPackageName() { + return packageName; + } + + public void setPackageName(String packageName) { + this.packageName = packageName; + } + public String getPackagePath() { return packagePath; } @@ -44,4 +56,11 @@ public class OutputInfo { this.nameSuffix = nameSuffix; } + public String getNamePrefix() { + return namePrefix; + } + + public void setNamePrefix(String namePrefix) { + this.namePrefix = namePrefix; + } } diff --git a/src/main/java/space/caoshd/otone/entity/TableInfo.java b/src/main/java/space/caoshd/otone/entity/TableInfo.java index 12bde7c..e811c81 100644 --- a/src/main/java/space/caoshd/otone/entity/TableInfo.java +++ b/src/main/java/space/caoshd/otone/entity/TableInfo.java @@ -8,15 +8,18 @@ import java.util.Map; public class TableInfo { - private final Map addonInfo = new HashMap<>(); private String comment; private String tableSchema; private String tableName; - private String beanName; + private String packageName; + private String className; + private String classNameSuffix; + private String classNamePrefix; private Boolean dateExists; private Boolean decimalExists; - private List columnInfo = new ArrayList<>(); - private Map> indexInfo = new LinkedHashMap<>(); + private List columns = new ArrayList<>(); + private Map> indexes = new LinkedHashMap<>(); + private Map extra = new HashMap<>(); public String getComment() { return comment; @@ -42,12 +45,36 @@ public class TableInfo { this.tableName = tableName; } - public String getBeanName() { - return beanName; + public String getPackageName() { + return packageName; } - public void setBeanName(String beanName) { - this.beanName = beanName; + public void setPackageName(String packageName) { + this.packageName = packageName; + } + + public String getClassName() { + return className; + } + + public void setClassName(String className) { + this.className = className; + } + + public String getClassNamePrefix() { + return classNamePrefix; + } + + public void setClassNamePrefix(String classNamePrefix) { + this.classNamePrefix = classNamePrefix; + } + + public String getClassNameSuffix() { + return classNameSuffix; + } + + public void setClassNameSuffix(String classNameSuffix) { + this.classNameSuffix = classNameSuffix; } public Boolean getDateExists() { @@ -66,23 +93,27 @@ public class TableInfo { this.decimalExists = decimalExists; } - public List getColumnInfo() { - return columnInfo; + public List getColumns() { + return columns; + } + + public void setColumns(List columns) { + this.columns = columns; } - public void setColumnInfo(List columnInfo) { - this.columnInfo = columnInfo; + public Map> getIndexes() { + return indexes; } - public Map> getIndexInfo() { - return indexInfo; + public void setIndexes(Map> indexes) { + this.indexes = indexes; } - public void setIndexInfo(Map> indexInfo) { - this.indexInfo = indexInfo; + public Map getExtra() { + return extra; } - public Map getAddonInfo() { - return addonInfo; + public void setExtra(Map extra) { + this.extra = extra; } } diff --git a/src/main/java/space/caoshd/otone/util/CfgUtils.java b/src/main/java/space/caoshd/otone/util/CfgUtils.java index c5d8b4f..283c39c 100644 --- a/src/main/java/space/caoshd/otone/util/CfgUtils.java +++ b/src/main/java/space/caoshd/otone/util/CfgUtils.java @@ -24,6 +24,7 @@ public class CfgUtils { public static final String PACKAGE_NAME_PO = "package.name.po"; public static final String PACKAGE_NAME_MAPPER = "package.name.mapper"; public static final String PACKAGE_NAME_SERVICE = "package.name.service"; + public static final String PACKAGE_NAME_SERVICE_INTERFACE = "package.name.service.interface"; public static final String PACKAGE_NAME_CONTROLLER = "package.name.controller"; public static final String PACKAGE_NAME_QUERY = "package.name.query"; public static final String PACKAGE_NAME_FORM = "package.name.form"; @@ -44,6 +45,8 @@ public class CfgUtils { public static final String JAVA_NAME_SUFFIX_FORM = "java.name.suffix.form"; public static final String JAVA_NAME_SUFFIX_VIEW = "java.name.suffix.view"; public static final String JAVA_NAME_SUFFIX_CONTROLLER = "java.name.suffix.controller"; + public static final String JAVA_NAME_PREFIX_SERVICE_INTERFACE = "java.name.prefix.service" + + ".interface"; // 模版路径配置 public static final String TEMPLATE_PATH_PO = "template.path.po"; @@ -52,9 +55,9 @@ public class CfgUtils { public static final String TEMPLATE_PATH_QUERY = "template.path.query"; public static final String TEMPLATE_PATH_CONTROLLER = "template.path.controller"; public static final String TEMPLATE_PATH_SERVICE = "template.path.service"; - public static final String TEMPLATE_PATH_SERVICE_INTERFACE = "template.path.service_interface"; + public static final String TEMPLATE_PATH_SERVICE_INTERFACE = "template.path.service.interface"; public static final String TEMPLATE_PATH_MAPPER = "template.path.mapper"; - public static final String TEMPLATE_PATH_MAPPER_XML = "template.path.mapper_xml"; + public static final String TEMPLATE_PATH_MAPPER_XML = "template.path.mapper.xml"; // 常量配置 public static final String VALUE_TABLE = "table"; @@ -66,7 +69,8 @@ public class CfgUtils { // 包名默认值配置 public static final String DEFAULT_PACKAGE_NAME_PO = "repository.po"; public static final String DEFAULT_PACKAGE_NAME_MAPPER = "repository.mapper"; - public static final String DEFAULT_PACKAGE_NAME_SERVICE = "service"; + public static final String DEFAULT_PACKAGE_NAME_SERVICE_INTERFACE = "service"; + public static final String DEFAULT_PACKAGE_NAME_SERVICE = "service.impl"; public static final String DEFAULT_PACKAGE_NAME_QUERY = "controller.query"; public static final String DEFAULT_PACKAGE_NAME_FORM = "controller.form"; public static final String DEFAULT_PACKAGE_NAME_VIEW = "controller.view"; @@ -85,6 +89,7 @@ public class CfgUtils { public static final String DEFAULT_JAVA_NAME_SUFFIX_FORM = "Form"; public static final String DEFAULT_JAVA_NAME_SUFFIX_VIEW = "View"; public static final String DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER = "Controller"; + public static final String DEFAULT_JAVA_NAME_PREFIX_SERVICE_INTERFACE = "I"; // 模板文件路径默认值配置 public static final String DEFAULT_TEMPLATE_PATH_PO = "template/po.vm"; @@ -93,7 +98,8 @@ public class CfgUtils { public static final String DEFAULT_TEMPLATE_PATH_QUERY = "template/query.vm"; public static final String DEFAULT_TEMPLATE_PATH_CONTROLLER = "template/controller.vm"; public static final String DEFAULT_TEMPLATE_PATH_SERVICE = "template/service.vm"; - public static final String DEFAULT_TEMPLATE_PATH_SERVICE_INTERFACE = "service.interface/po.vm"; + public static final String DEFAULT_TEMPLATE_PATH_SERVICE_INTERFACE = "template/service" + + ".interface.vm"; public static final String DEFAULT_TEMPLATE_PATH_MAPPER = "template/mapper.vm"; public static final String DEFAULT_TEMPLATE_PATH_MAPPER_XML = "template/mapper.xml.vm"; private static final PropTools CONFIG = new PropTools(PathConsts.CONFIG_PROPERTIES_PATH); @@ -112,14 +118,14 @@ public class CfgUtils { public static String getProjectPath(String moduleName) { String projectBasePath = getProjectBasePath(); - if (!isMultiModule()) { + if (!isMultipleModule()) { return projectBasePath; } else { return projectBasePath + "/" + getProjectName() + "-" + moduleName; } } - public static boolean isMultiModule() { + public static boolean isMultipleModule() { return CONFIG.getBoolean(MODULE_MULTIPLE); } @@ -127,212 +133,271 @@ public class CfgUtils { return CONFIG.getBoolean(MODULE_NAME_AS_PACKAGE_BASE); } - public static String getJavaPath(String moduleName) { + public static String getMainJavaPath(String moduleName) { String projectPath = getProjectPath(moduleName); String projectPathJava = CONFIG.getString(PROJECT_PATH_JAVA, DEFAULT_PROJECT_PATH_JAVA); return Paths.get(projectPath, projectPathJava).toString(); } - private static String packageToPath(String packageName) { + private static String packageNameToPath(String packageName) { return packageName.replaceAll("\\.", "/"); } - public static String getPackageBasePath(String moduleName) { - String javaPath = getJavaPath(moduleName); - String packageName = CONFIG.getString(PACKAGE_NAME_BASE); - String packagePath = packageToPath(packageName); + public static String getPackageName(String moduleName, String packageName) { + String packageNameBase = CONFIG.getString(PACKAGE_NAME_BASE); if (moduleNameAsPackageBase()) { - return Paths.get(javaPath, packagePath, moduleName).toString(); + return packageNameBase + "." + moduleName + "." + packageName; } else { - return Paths.get(javaPath, packagePath).toString(); + return packageNameBase + "." + packageName; } } - public static String getPathBasedPackage( - String moduleName, String configName - ) { - String basePath = getPackageBasePath(moduleName); - String packagePath = packageToPath(configName); - return Paths.get(basePath, packagePath).toString(); + public static String getPackagePath(String moduleName, String packageName) { + String javaPath = getMainJavaPath(moduleName); + String packagePath = packageNameToPath(packageName); + return Paths.get(javaPath, packagePath).toString(); } - public static String getRepositoryModuleName() { - return CONFIG.getString(MODULE_NAME_REPOSITORY, DEFAULT_MODULE_NAME_REPOSITORY); + public static String getJavaFilename(String className, String nameSuffix, String prefix) { + return prefix + className + nameSuffix + JAVA_FILE_SUFFIX; } - public static String getServiceModuleName() { - return CONFIG.getString(MODULE_NAME_SERVICE, DEFAULT_MODULE_NAME_SERVICE); + public static String getJavaFilename(String className, String nameSuffix) { + return getJavaFilename(className, nameSuffix, ""); + } + + public static String getJavaFilePath( + String packagePath, String className, String nameSuffix, String namePrefix + ) { + String filename = CfgUtils.getJavaFilename(className, nameSuffix, namePrefix); + return Paths.get(packagePath, filename).toString(); } public static String getControllerModuleName() { return CONFIG.getString(MODULE_NAME_CONTROLLER, DEFAULT_MODULE_NAME_CONTROLLER); } - public static String getServicePackagePath() { + public static String getControllerNameSuffix() { + return CONFIG.getString(JAVA_NAME_SUFFIX_CONTROLLER, DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER); + } + + public static String getControllerTemplatePath() { + return CONFIG.getString(TEMPLATE_PATH_CONTROLLER, DEFAULT_TEMPLATE_PATH_CONTROLLER); + } + + public static String getControllerPackageName() { String moduleName = getServiceModuleName(); - String configName = CONFIG.getString(PACKAGE_NAME_SERVICE, DEFAULT_PACKAGE_NAME_MAPPER); - return getPathBasedPackage(moduleName, configName); + String packageName = CONFIG.getString( + PACKAGE_NAME_CONTROLLER, + DEFAULT_PACKAGE_NAME_CONTROLLER + ); + return getPackageName(moduleName, packageName); } public static String getControllerPackagePath() { String moduleName = getControllerModuleName(); - String configName = CONFIG.getString(PACKAGE_NAME_CONTROLLER, - DEFAULT_PACKAGE_NAME_CONTROLLER + String packageName = getControllerPackageName(); + return getPackagePath(moduleName, packageName); + } + + public static String getControllerFilePath(String className) { + String controllerPackagePath = getControllerPackagePath(); + String suffix = CONFIG.getString( + JAVA_NAME_SUFFIX_CONTROLLER, + DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER ); - return getPathBasedPackage(moduleName, configName); + String filename = getJavaFilename(className, suffix); + return Paths.get(controllerPackagePath, filename).toString(); } - public static String getViewPackagePath() { - String moduleName = getControllerModuleName(); - String configName = CONFIG.getString(PACKAGE_NAME_VIEW, DEFAULT_PACKAGE_NAME_VIEW); - return getPathBasedPackage(moduleName, configName); + public static String getViewNameSuffix() { + return CONFIG.getString(JAVA_NAME_SUFFIX_VIEW, DEFAULT_JAVA_NAME_SUFFIX_VIEW); } - public static String getFormPackagePath() { - String moduleName = getControllerModuleName(); - String configName = CONFIG.getString(PACKAGE_NAME_FORM, DEFAULT_PACKAGE_NAME_FORM); - return getPathBasedPackage(moduleName, configName); + public static String getViewTemplatePath() { + return CONFIG.getString(TEMPLATE_PATH_VIEW, DEFAULT_TEMPLATE_PATH_VIEW); } - public static String getQueryPackagePath() { + public static String getViewPackageName() { String moduleName = getControllerModuleName(); - String configName = CONFIG.getString(PACKAGE_NAME_QUERY, DEFAULT_PACKAGE_NAME_QUERY); - return getPathBasedPackage(moduleName, configName); + String packageName = CONFIG.getString(PACKAGE_NAME_VIEW, DEFAULT_PACKAGE_NAME_VIEW); + return getPackageName(moduleName, packageName); } - public static String getPoPackagePath() { - String moduleName = getRepositoryModuleName(); - String configName = CONFIG.getString(PACKAGE_NAME_PO, DEFAULT_PACKAGE_NAME_PO); - return getPathBasedPackage(moduleName, configName); + public static String getViewPackagePath() { + String moduleName = getControllerModuleName(); + String packageName = getViewPackageName(); + return getPackagePath(moduleName, packageName); } - public static String getMapperPackagePath() { - String moduleName = getRepositoryModuleName(); - String configName = CONFIG.getString(PACKAGE_NAME_MAPPER, DEFAULT_PACKAGE_NAME_MAPPER); - return getPathBasedPackage(moduleName, configName); + public static String getViewFilePath(String className) { + String viewPackagePath = getViewPackagePath(); + String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_VIEW, DEFAULT_JAVA_NAME_SUFFIX_VIEW); + String filename = getJavaFilename(className, suffix); + return Paths.get(viewPackagePath, filename).toString(); } - private static String getFilename(String className, String suffix) { - return className + suffix + JAVA_FILE_SUFFIX; + public static String getFormNameSuffix() { + return CONFIG.getString(JAVA_NAME_SUFFIX_FORM, DEFAULT_JAVA_NAME_SUFFIX_FORM); } - public static String getPoJavaPath(String className) { - String poPackagePath = getPoPackagePath(); - String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_PO, DEFAULT_JAVA_NAME_SUFFIX_PO); - String filename = getFilename(className, suffix); - return Paths.get(poPackagePath, filename).toString(); + public static String getFormTemplatePath() { + return CONFIG.getString(TEMPLATE_PATH_FORM, DEFAULT_TEMPLATE_PATH_FORM); } - public static String getMapperJavaPath(String className) { - String mapperPackagePath = getMapperPackagePath(); - String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_MAPPER, DEFAULT_JAVA_NAME_SUFFIX_MAPPER); - - String filename = getFilename(className, suffix); - return Paths.get(mapperPackagePath, filename).toString(); + public static String getFormPackageName() { + String moduleName = getControllerModuleName(); + String packageName = CONFIG.getString(PACKAGE_NAME_FORM, DEFAULT_PACKAGE_NAME_FORM); + return getPackageName(moduleName, packageName); } - public static String getServiceJavaPath(String className) { - String servicePackagePath = getServicePackagePath(); - String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_SERVICE, - DEFAULT_JAVA_NAME_SUFFIX_SERVICE - ); - String filename = getFilename(className, suffix); - return Paths.get(servicePackagePath, filename).toString(); + public static String getFormPackagePath() { + String moduleName = getControllerModuleName(); + String packageName = getFormPackageName(); + return getPackagePath(moduleName, packageName); } + public static String getFormFilePath(String className) { + String formPackagePath = getFormPackagePath(); + String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_FORM, DEFAULT_JAVA_NAME_SUFFIX_FORM); + String filename = getJavaFilename(className, suffix); + return Paths.get(formPackagePath, filename).toString(); + } - public static String getControllerJavaPath(String className) { - String controllerPackagePath = getControllerPackagePath(); - String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_CONTROLLER, - DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER - ); - String filename = getFilename(className, suffix); - return Paths.get(controllerPackagePath, filename).toString(); + public static String getQueryNameSuffix() { + return CONFIG.getString(JAVA_NAME_SUFFIX_QUERY, DEFAULT_JAVA_NAME_SUFFIX_QUERY); } + public static String getQueryTemplatePath() { + return CONFIG.getString(TEMPLATE_PATH_QUERY, DEFAULT_TEMPLATE_PATH_QUERY); + } - public static String getFormJavaPath(String className) { - String formPackagePath = getFormPackagePath(); - String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_CONTROLLER, - DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER - ); - String filename = getFilename(className, suffix); - return Paths.get(formPackagePath, filename).toString(); + public static String getQueryPackageName() { + String moduleName = getControllerModuleName(); + String configName = CONFIG.getString(PACKAGE_NAME_QUERY, DEFAULT_PACKAGE_NAME_QUERY); + return getPackageName(moduleName, configName); } + public static String getQueryPackagePath() { + String moduleName = getControllerModuleName(); + String configName = getQueryPackageName(); + return getPackagePath(moduleName, configName); + } - public static String getQueryJavaPath(String className) { + public static String getQueryFilePath(String className) { String basePath = getQueryPackagePath(); String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_QUERY, DEFAULT_JAVA_NAME_SUFFIX_QUERY); - String filename = getFilename(className, suffix); + String filename = getJavaFilename(className, suffix); return Paths.get(basePath, filename).toString(); } - public static String getViewJavaPath(String className) { - String viewPackagePath = getViewPackagePath(); - String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_VIEW, DEFAULT_JAVA_NAME_SUFFIX_VIEW); - String filename = getFilename(className, suffix); - return Paths.get(viewPackagePath, filename).toString(); + public static String getServiceModuleName() { + return CONFIG.getString(MODULE_NAME_SERVICE, DEFAULT_MODULE_NAME_SERVICE); } - public static String getViewNameSuffix() { - return CONFIG.getString(JAVA_NAME_SUFFIX_VIEW, DEFAULT_JAVA_NAME_SUFFIX_VIEW); + public static String getServiceNameSuffix() { + return CONFIG.getString(JAVA_NAME_SUFFIX_SERVICE, DEFAULT_JAVA_NAME_SUFFIX_SERVICE); } - public static String getPoNameSuffix() { - return CONFIG.getString(JAVA_NAME_SUFFIX_PO, DEFAULT_JAVA_NAME_SUFFIX_PO); + public static String getServiceTemplatePath() { + return CONFIG.getString(TEMPLATE_PATH_SERVICE, DEFAULT_TEMPLATE_PATH_SERVICE); } - public static String getQueryNameSuffix() { - return CONFIG.getString(JAVA_NAME_SUFFIX_QUERY, DEFAULT_JAVA_NAME_SUFFIX_QUERY); + public static String getServicePackageName() { + String moduleName = getServiceModuleName(); + String packageName = CONFIG.getString(PACKAGE_NAME_SERVICE, DEFAULT_PACKAGE_NAME_SERVICE); + return getPackageName(moduleName, packageName); } - public static String getFormNameSuffix() { - return CONFIG.getString(JAVA_NAME_SUFFIX_FORM, DEFAULT_JAVA_NAME_SUFFIX_FORM); + public static String getServicePackagePath() { + String moduleName = getServiceModuleName(); + String packageName = getServicePackageName(); + return getPackagePath(moduleName, packageName); } - public static String getControllerNameSuffix() { - return CONFIG.getString(JAVA_NAME_SUFFIX_CONTROLLER, DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER); + public static String getServiceFilePath(String className) { + String servicePackagePath = getServicePackagePath(); + String suffix = CONFIG.getString( + JAVA_NAME_SUFFIX_SERVICE, + DEFAULT_JAVA_NAME_SUFFIX_SERVICE + ); + String filename = getJavaFilename(className, suffix); + return Paths.get(servicePackagePath, filename).toString(); } - public static String getServiceNameSuffix() { - return CONFIG.getString(JAVA_NAME_SUFFIX_SERVICE, DEFAULT_JAVA_NAME_SUFFIX_SERVICE); + + public static String getServiceInterfacePrefix() { + return CONFIG.getString( + JAVA_NAME_PREFIX_SERVICE_INTERFACE, + DEFAULT_JAVA_NAME_PREFIX_SERVICE_INTERFACE + ); } - public static String getMapperNameSuffix() { - return CONFIG.getString(JAVA_NAME_SUFFIX_MAPPER, DEFAULT_JAVA_NAME_SUFFIX_MAPPER); + public static String getServiceInterfaceTemplatePath() { + return CONFIG.getString( + TEMPLATE_PATH_SERVICE_INTERFACE, + DEFAULT_TEMPLATE_PATH_SERVICE_INTERFACE + ); } - public static String getPoTemplatePath() { - return CONFIG.getString(TEMPLATE_PATH_PO, DEFAULT_TEMPLATE_PATH_PO); + public static String getServiceInterfacePackageName() { + String moduleName = getServiceModuleName(); + String packageName = CONFIG.getString( + PACKAGE_NAME_SERVICE_INTERFACE, + DEFAULT_PACKAGE_NAME_SERVICE_INTERFACE + ); + return getPackageName(moduleName, packageName); } - public static String getViewTemplatePath() { - return CONFIG.getString(TEMPLATE_PATH_VIEW, DEFAULT_TEMPLATE_PATH_VIEW); + public static String getServiceInterfacePackagePath() { + String moduleName = getServiceModuleName(); + String packageName = getServiceInterfacePackageName(); + return getPackagePath(moduleName, packageName); } + public static String getServiceInterfaceFilePath(String className) { + String servicePackagePath = getServicePackagePath(); + String prefix = CONFIG.getString( + JAVA_NAME_PREFIX_SERVICE_INTERFACE, + DEFAULT_JAVA_NAME_PREFIX_SERVICE_INTERFACE + ); + String filename = getJavaFilename(className, "", prefix); + return Paths.get(servicePackagePath, filename).toString(); + } - public static String getFormTemplatePath() { - return CONFIG.getString(TEMPLATE_PATH_FORM, DEFAULT_TEMPLATE_PATH_FORM); + public static String getRepositoryModuleName() { + return CONFIG.getString(MODULE_NAME_REPOSITORY, DEFAULT_MODULE_NAME_REPOSITORY); } + public static String getPoNameSuffix() { + return CONFIG.getString(JAVA_NAME_SUFFIX_PO, DEFAULT_JAVA_NAME_SUFFIX_PO); + } - public static String getQueryTemplatePath() { - return CONFIG.getString(TEMPLATE_PATH_QUERY, DEFAULT_TEMPLATE_PATH_QUERY); + public static String getPoTemplatePath() { + return CONFIG.getString(TEMPLATE_PATH_PO, DEFAULT_TEMPLATE_PATH_PO); } - public static String getControllerTemplatePath() { - return CONFIG.getString(TEMPLATE_PATH_CONTROLLER, DEFAULT_TEMPLATE_PATH_CONTROLLER); + public static String getPoPackageName() { + String moduleName = getRepositoryModuleName(); + String packageName = CONFIG.getString(PACKAGE_NAME_PO, DEFAULT_PACKAGE_NAME_PO); + return getPackageName(moduleName, packageName); } - public static String getServiceTemplatePath() { - return CONFIG.getString(TEMPLATE_PATH_SERVICE, DEFAULT_TEMPLATE_PATH_SERVICE); + public static String getPoPackagePath() { + String moduleName = getRepositoryModuleName(); + String packageName = getPoPackageName(); + return getPackagePath(moduleName, packageName); } - public static String getServiceInterfaceTemplatePath() { - return CONFIG.getString(TEMPLATE_PATH_SERVICE_INTERFACE, - DEFAULT_TEMPLATE_PATH_SERVICE_INTERFACE - ); + public static String getPoJavaPath(String className) { + String poPackagePath = getPoPackagePath(); + String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_PO, DEFAULT_JAVA_NAME_SUFFIX_PO); + String filename = getJavaFilename(className, suffix); + return Paths.get(poPackagePath, filename).toString(); + } + + public static String getMapperNameSuffix() { + return CONFIG.getString(JAVA_NAME_SUFFIX_MAPPER, DEFAULT_JAVA_NAME_SUFFIX_MAPPER); } public static String getMapperTemplatePath() { @@ -343,15 +408,24 @@ public class CfgUtils { return CONFIG.getString(TEMPLATE_PATH_MAPPER_XML, DEFAULT_TEMPLATE_PATH_MAPPER_XML); } - - public static String getOutputFilename(String beanName, String nameSuffix) { - return beanName + nameSuffix + JAVA_FILE_SUFFIX; + public static String getMapperPackageName() { + String moduleName = getRepositoryModuleName(); + String packageName = CONFIG.getString(PACKAGE_NAME_MAPPER, DEFAULT_PACKAGE_NAME_MAPPER); + return getPackageName(moduleName, packageName); } - public static String getOutputPath(String packagePath, String beanName, String nameSuffix) { - String filename = CfgUtils.getOutputFilename(beanName, nameSuffix); - return Paths.get(packagePath, filename).toString(); + public static String getMapperPackagePath() { + String moduleName = getRepositoryModuleName(); + String packageName = getMapperPackageName(); + return getPackagePath(moduleName, packageName); } + public static String getMapperFilePath(String className) { + String mapperPackagePath = getMapperPackagePath(); + String suffix = CONFIG.getString(JAVA_NAME_SUFFIX_MAPPER, DEFAULT_JAVA_NAME_SUFFIX_MAPPER); + + String filename = getJavaFilename(className, suffix); + return Paths.get(mapperPackagePath, filename).toString(); + } } diff --git a/src/main/java/space/caoshd/otone/util/VelocityUtils.java b/src/main/java/space/caoshd/otone/util/VelocityUtils.java index a309fb8..a3b80b1 100644 --- a/src/main/java/space/caoshd/otone/util/VelocityUtils.java +++ b/src/main/java/space/caoshd/otone/util/VelocityUtils.java @@ -3,6 +3,9 @@ package space.caoshd.otone.util; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import space.caoshd.otone.builder.TableBuilder; import space.caoshd.otone.tool.PropTools; import java.io.FileWriter; @@ -12,6 +15,8 @@ import java.util.Properties; public class VelocityUtils { + private static final Logger LOGGER = LoggerFactory.getLogger(TableBuilder.class); + public static void render( String beanName, Object bean, String templatePath, String outputPath ) { @@ -20,10 +25,12 @@ public class VelocityUtils { Velocity.init(properties); VelocityContext context = new VelocityContext(); - context.put(beanName, bean); + context.put("context", bean); Template template = Velocity.getTemplate(templatePath, StandardCharsets.UTF_8.name()); try (FileWriter fw = new FileWriter(outputPath)) { + LOGGER.info("generate file: {}", outputPath); + LOGGER.info("context info: {}", JsonUtils.toJson(bean)); template.merge(context, fw); } catch (IOException e) { throw new RuntimeException(e); diff --git a/src/test/java/space/caoshd/otone/builder/ColumnBuilderTest.java b/src/test/java/space/caoshd/otone/builder/ColumnBuilderTest.java index b81a11a..9404441 100644 --- a/src/test/java/space/caoshd/otone/builder/ColumnBuilderTest.java +++ b/src/test/java/space/caoshd/otone/builder/ColumnBuilderTest.java @@ -1,10 +1,11 @@ package space.caoshd.otone.builder; -import org.junit.jupiter.api.Test; -class ColumnBuilderTest { +import org.junit.Test; + +public class ColumnBuilderTest { @Test - void loadColumnInfo() { + public void loadColumnInfo() { } } \ No newline at end of file diff --git a/src/test/java/space/caoshd/otone/builder/SourceBuilderTest.java b/src/test/java/space/caoshd/otone/builder/SourceBuilderTest.java index 19a6847..b0e4ff6 100644 --- a/src/test/java/space/caoshd/otone/builder/SourceBuilderTest.java +++ b/src/test/java/space/caoshd/otone/builder/SourceBuilderTest.java @@ -1,16 +1,18 @@ package space.caoshd.otone.builder; -import org.junit.jupiter.api.Test; +import org.junit.Test; import space.caoshd.otone.tool.PropTools; import space.caoshd.otone.util.PathConsts; -class SourceBuilderTest { +public class SourceBuilderTest { private static final PropTools CONFIG = new PropTools(PathConsts.MYSQL_PROPERTIES_PATH); @Test - void build() { - new SourceBuilder().build(); + public void build() { + new SourceBuilder() + .addExtra("author", "caoshd") + .build(); } } \ No newline at end of file diff --git a/src/test/java/space/caoshd/otone/builder/TableBuilderTest.java b/src/test/java/space/caoshd/otone/builder/TableBuilderTest.java index a22e1f5..ebefd26 100644 --- a/src/test/java/space/caoshd/otone/builder/TableBuilderTest.java +++ b/src/test/java/space/caoshd/otone/builder/TableBuilderTest.java @@ -1,18 +1,14 @@ package space.caoshd.otone.builder; -import org.junit.jupiter.api.Test; +import org.junit.Test; import space.caoshd.otone.entity.TableInfo; import java.util.List; -class TableBuilderTest { +public class TableBuilderTest { @Test - void loadTableInfo() { - List tableInfoList = new TableBuilder().addTableAddonAble(( - tableInfo, addonInfo - ) -> addonInfo.put("author", "caoshd")) - .addColumnAddonAble((columnInfo, addonInfo) -> System.out.println(addonInfo)) - .build(); + public void loadTableInfo() { + List tableInfoList = new TableBuilder().build(); } } \ No newline at end of file diff --git a/src/test/java/space/caoshd/otone/tool/PropToolsTest.java b/src/test/java/space/caoshd/otone/tool/PropToolsTest.java index 82cac7c..fd7d430 100644 --- a/src/test/java/space/caoshd/otone/tool/PropToolsTest.java +++ b/src/test/java/space/caoshd/otone/tool/PropToolsTest.java @@ -1,29 +1,30 @@ package space.caoshd.otone.tool; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; +import org.junit.Assert; +import org.junit.Test; import space.caoshd.otone.util.CfgUtils; import space.caoshd.otone.util.PathConsts; import space.caoshd.otone.util.ResUtils; -import java.io.*; +import java.io.InputStream; import java.util.List; -class PropToolsTest { +public class PropToolsTest { @Test - void loadProperties() { - InputStream fileStream = ResUtils.getClassPathFileStream(PathConsts.DATASOURCE_PROPERTIES_PATH); + public void loadProperties() { + InputStream fileStream = + ResUtils.getClassPathFileStream(PathConsts.DATASOURCE_PROPERTIES_PATH); PropTools propTools = new PropTools(fileStream); - Assertions.assertNotNull(propTools); + Assert.assertNotNull(propTools); } @Test - void getString() { + public void getString() { } @Test - void getStrings() { + public void getStrings() { InputStream fileStream = ResUtils.getClassPathFileStream(PathConsts.CONFIG_PROPERTIES_PATH); PropTools configProperties = new PropTools(fileStream); List strings = configProperties.getStrings(CfgUtils.DATABASE_TABLE_PREFIXES); @@ -31,10 +32,10 @@ class PropToolsTest { } @Test - void getInt() { + public void getInt() { } @Test - void getLong() { + public void getLong() { } } \ No newline at end of file diff --git a/src/test/java/space/caoshd/otone/util/CfgUtilsTest.java b/src/test/java/space/caoshd/otone/util/CfgUtilsTest.java index 0328080..c6258da 100644 --- a/src/test/java/space/caoshd/otone/util/CfgUtilsTest.java +++ b/src/test/java/space/caoshd/otone/util/CfgUtilsTest.java @@ -1,41 +1,42 @@ package space.caoshd.otone.util; -import org.junit.jupiter.api.Test; + +import org.junit.Test; public class CfgUtilsTest { @Test - void getProjectPath() { + public void getProjectPath() { String projectPath = CfgUtils.getProjectBasePath(); System.out.println(projectPath); } @Test - void getProjectName() { + public void getProjectName() { String projectName = CfgUtils.getProjectName(); System.out.println(projectName); } @Test - void getJavaPath() { - String javaPath = CfgUtils.getJavaPath("data"); + public void getJavaPath() { + String javaPath = CfgUtils.getMainJavaPath("data"); System.out.println(javaPath); } @Test - void getPackagePath() { - String packagePath = CfgUtils.getPackageBasePath("service"); + public void getPackagePath() { + String packagePath = CfgUtils.getPackagePath("service", "aaa"); System.out.println(packagePath); } @Test - void getRepositoryModuleName() { + public void getRepositoryModuleName() { String repositoryModuleName = CfgUtils.getRepositoryModuleName(); System.out.println(repositoryModuleName); } @Test - void getRepositoryPackageName() { + public void getRepositoryPackageName() { String poPackagePath = CfgUtils.getPoPackagePath(); System.out.println(poPackagePath); @@ -44,7 +45,7 @@ public class CfgUtilsTest { } @Test - void getViewNameSuffix() { + public void getViewNameSuffix() { String viewNameSuffix = CfgUtils.getViewNameSuffix(); System.out.println(viewNameSuffix); } diff --git a/src/test/java/space/caoshd/otone/util/DBUtilsTest.java b/src/test/java/space/caoshd/otone/util/DBUtilsTest.java index 4726399..9fb8a01 100644 --- a/src/test/java/space/caoshd/otone/util/DBUtilsTest.java +++ b/src/test/java/space/caoshd/otone/util/DBUtilsTest.java @@ -1,17 +1,17 @@ package space.caoshd.otone.util; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; +import org.junit.Assert; +import org.junit.Test; import space.caoshd.otone.tool.PropTools; import java.util.Arrays; import java.util.List; import java.util.Map; -class DBUtilsTest { +public class DBUtilsTest { @Test - void executeQuery() { + public void executeQuery() { PropTools sqlProperties = new PropTools(PathConsts.MYSQL_PROPERTIES_PATH); String sql = sqlProperties.getString(SqlConsts.TABLE_SQL_SCHEMA_TABLE); PropTools configProperties = @@ -20,6 +20,6 @@ class DBUtilsTest { List tables = configProperties.getStrings(CfgUtils.DATABASE_NAME_TABLES); List params = Arrays.asList(schemas.get(0), tables.get(0)); List> maps = DBUtils.list(sql, params); - Assertions.assertFalse(maps.isEmpty()); + Assert.assertFalse(maps.isEmpty()); } } \ No newline at end of file diff --git a/src/test/java/space/caoshd/otone/util/ResUtilsTest.java b/src/test/java/space/caoshd/otone/util/ResUtilsTest.java index b4a17bd..abd4938 100644 --- a/src/test/java/space/caoshd/otone/util/ResUtilsTest.java +++ b/src/test/java/space/caoshd/otone/util/ResUtilsTest.java @@ -1,18 +1,18 @@ package space.caoshd.otone.util; -import org.junit.jupiter.api.Test; +import org.junit.Test; import java.io.File; -class ResUtilsTest { +public class ResUtilsTest { @Test - void getClassPathFile() { + public void getClassPathFile() { File file = ResUtils.getClassPathFile("datasource.properties"); System.out.println(file); } @Test - void getClassPathFileStream() { + public void getClassPathFileStream() { } } \ No newline at end of file diff --git a/src/test/java/space/caoshd/otone/util/StrUtilsTest.java b/src/test/java/space/caoshd/otone/util/StrUtilsTest.java index f73b489..d4a001c 100644 --- a/src/test/java/space/caoshd/otone/util/StrUtilsTest.java +++ b/src/test/java/space/caoshd/otone/util/StrUtilsTest.java @@ -1,27 +1,30 @@ package space.caoshd.otone.util; -import org.junit.jupiter.api.Test; -class StrUtilsTest { +import org.junit.Test; + +public class StrUtilsTest { @Test - void last() { + public void last() { } @Test - void first() { + public void first() { } @Test - void removePrefix(){ + public void removePrefix() { String username = StrUtils.removePrefix("t_user_name", "t_"); System.out.println(username); } + @Test - void toCamelCase() { + public void toCamelCase() { String userName = StrUtils.toCamelCase("user_name", false); String className = StrUtils.toCamelCase("class_name", true); System.out.println(userName); System.out.println(className); } + } \ No newline at end of file diff --git a/src/test/resources/config/config.properties b/src/test/resources/config/config.properties index 38b9d91..cc5ddf2 100644 --- a/src/test/resources/config/config.properties +++ b/src/test/resources/config/config.properties @@ -1,44 +1,37 @@ project.path.base=D:/workspace/otono-debug/ #project.path.java=src/main/java #project.path.resources=src/main/resources - package.name.base=space.caoshd.navigator -package.name.po=repository.po -package.name.mapper=repository.mapper -package.name.service=service -package.name.query=controller.query -package.name.form=controller.form -package.name.view=controller.view -package.name.controller=controller - -module.multiple=false -module.name.as_package_base=false -module.name.controller=controller -module.name.repository=data -module.name.service=cmpt - -java.name.suffix.service=Service -java.name.suffix.controller=Controller -java.name.suffix.view=View -java.name.suffix.form=Form -java.name.suffix.query=Query -java.name.suffix.mapper=Mapper -java.name.suffix.po= - - - +#package.name.po=repository.po +#package.name.mapper=repository.mapper +package.name.service=service.impl +package.name.service.interface=service +#package.name.query=controller.query +#package.name.form=controller.form +#package.name.view=controller.view +#package.name.controller=controller +#module.multiple=false +#module.name.as_package_base=false +#module.name.controller=controller +#module.name.repository=data +#module.name.service=cmpt +#java.name.suffix.service=Service +#java.name.suffix.controller=Controller +#java.name.suffix.view=View +#java.name.suffix.form=Form +#java.name.suffix.query=Query +#java.name.suffix.mapper=Mapper +#java.name.suffix.po= #database.name.schemas=otone #database.name.tables= database.table.prefixes=t_,m_ - -template.path.po=template/po.vm -template.path.view=template/view.vm -template.path.form=template/form.vm -template.path.query=template/query.vm -template.path.controller=template/controller.vm -template.path.service=template/service.vm -template.path.service_interface=template/service.interface/po.vm -template.path.mapper=template/mapper.vm -template.path.mapper_xml=template/mapper.xml.vm - -output.cover_if_exists=false +#template.path.po=template/po.vm +#template.path.view=template/view.vm +#template.path.form=template/form.vm +#template.path.query=template/query.vm +#template.path.controller=template/controller.vm +#template.path.service=template/service.vm +#template.path.service.interface=template/service.interface/po.vm +#template.path.mapper=template/mapper.vm +#template.path.mapper.xml=template/mapper.xml.vm +output.cover_if_exists=true diff --git a/src/test/resources/template/controller.vm b/src/test/resources/template/controller.vm index e69de29..6052072 100644 --- a/src/test/resources/template/controller.vm +++ b/src/test/resources/template/controller.vm @@ -0,0 +1,4 @@ +package ${context.packageName}; + +public class ${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file diff --git a/src/test/resources/template/form.vm b/src/test/resources/template/form.vm index e69de29..6052072 100644 --- a/src/test/resources/template/form.vm +++ b/src/test/resources/template/form.vm @@ -0,0 +1,4 @@ +package ${context.packageName}; + +public class ${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file diff --git a/src/test/resources/template/mapper.vm b/src/test/resources/template/mapper.vm index e69de29..6052072 100644 --- a/src/test/resources/template/mapper.vm +++ b/src/test/resources/template/mapper.vm @@ -0,0 +1,4 @@ +package ${context.packageName}; + +public class ${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file diff --git a/src/test/resources/template/po.vm b/src/test/resources/template/po.vm index 8e4f1a7..6052072 100644 --- a/src/test/resources/template/po.vm +++ b/src/test/resources/template/po.vm @@ -1 +1,4 @@ -${table.beanName} \ No newline at end of file +package ${context.packageName}; + +public class ${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file diff --git a/src/test/resources/template/query.vm b/src/test/resources/template/query.vm index e69de29..6052072 100644 --- a/src/test/resources/template/query.vm +++ b/src/test/resources/template/query.vm @@ -0,0 +1,4 @@ +package ${context.packageName}; + +public class ${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file diff --git a/src/test/resources/template/service.interface.vm b/src/test/resources/template/service.interface.vm index e69de29..7215c53 100644 --- a/src/test/resources/template/service.interface.vm +++ b/src/test/resources/template/service.interface.vm @@ -0,0 +1,4 @@ +package ${context.packageName}; + +public class $!{context.classNamePrefix}${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file diff --git a/src/test/resources/template/service.vm b/src/test/resources/template/service.vm index e69de29..6052072 100644 --- a/src/test/resources/template/service.vm +++ b/src/test/resources/template/service.vm @@ -0,0 +1,4 @@ +package ${context.packageName}; + +public class ${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file diff --git a/src/test/resources/template/view.vm b/src/test/resources/template/view.vm index 8e4f1a7..6052072 100644 --- a/src/test/resources/template/view.vm +++ b/src/test/resources/template/view.vm @@ -1 +1,4 @@ -${table.beanName} \ No newline at end of file +package ${context.packageName}; + +public class ${context.className}$!{context.classNameSuffix} { +} \ No newline at end of file