diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/config/CreateFileConfig.java b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/config/CreateFileConfig.java index 547ed430..871d42a2 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/config/CreateFileConfig.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/config/CreateFileConfig.java @@ -10,7 +10,7 @@ import java.util.List; @Slf4j public class CreateFileConfig { private String templatePath; - private List fileList = new ArrayList(); + private List templateRootDirs = new ArrayList(); private String stylePath; public CreateFileConfig(String templatePath) { @@ -29,7 +29,7 @@ public class CreateFileConfig { * @return void */ private void convertArrToList(File... files) { - this.fileList = Arrays.asList(files); + this.templateRootDirs = Arrays.asList(files); } public String getStylePath() { @@ -40,7 +40,7 @@ public class CreateFileConfig { this.stylePath = stylePath; } - public List listFile() { + public List listTemplateRootDirs() { String file = this.getClass().getResource(this.templatePath).getFile(); file = file.replaceAll("%20", " "); log.debug("-------classpath-------" + file); @@ -50,18 +50,18 @@ public class CreateFileConfig { } this.setFileList(new File(file)); - return this.fileList; + return this.templateRootDirs; } public void setFileList(List files) { - this.fileList = files; + this.templateRootDirs = files; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{\"templateRootDirs\":\""); - sb.append(this.fileList); + sb.append(this.templateRootDirs); sb.append("\",\"stylePath\":\""); sb.append(this.stylePath); sb.append("\"} "); diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOne.java b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOne.java index 1abfcdd3..23e6ed05 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOne.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOne.java @@ -95,7 +95,7 @@ public class CodeGenerateOne extends BaseCodeGenerate implements IGenerate { CreateFileConfig createFileConfig = new CreateFileConfig(templateUrl); createFileConfig.setStylePath(stylePath); - this.a(createFileConfig, projectPath, codeGenerateConfig); + this.createProject(createFileConfig, projectPath, codeGenerateConfig); log.info(" ----- jero-boot ---- generate code success =======> 表名:" + this.tableVo.getTableName() + " "); return this.list; } diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOneToMany.java b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOneToMany.java index 04d7d3db..1cb57fa7 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOneToMany.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/CodeGenerateOneToMany.java @@ -150,7 +150,7 @@ public class CodeGenerateOneToMany extends BaseCodeGenerate implements IGenerate CreateFileConfig createFileConfig = new CreateFileConfig(templateUrl); createFileConfig.setStylePath(stylePath); - this.a(createFileConfig, projectPath, configMap); + this.createProject(createFileConfig, projectPath, configMap); log.info("----- jero-boot ---- generate code success =======> 主表名:" + this.mainTableVo.getTableName()); return this.list; } diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/base/BaseCodeGenerate.java b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/base/BaseCodeGenerate.java index e3655d36..182ac4f9 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/base/BaseCodeGenerate.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/impl/base/BaseCodeGenerate.java @@ -29,59 +29,59 @@ public class BaseCodeGenerate { public BaseCodeGenerate() { } - protected void a(CreateFileConfig createFileConfig, String projectPath, Map configMap) throws Exception { + protected void createProject(CreateFileConfig createFileConfig, String projectPath, Map configMap) throws Exception { log.debug("--------generate----projectPath--------" + projectPath); - for(int i = 0; i < createFileConfig.listFile().size(); ++i) { - File file = (File)createFileConfig.listFile().get(i); - this.a(projectPath, file, configMap, createFileConfig); + for(int i = 0; i < createFileConfig.listTemplateRootDirs().size(); ++i) { + File templateDir = (File)createFileConfig.listTemplateRootDirs().get(i); + this.a(projectPath, templateDir, configMap, createFileConfig); } } - protected void a(String projectPath, File dir, Map configMap, CreateFileConfig createFileConfig) throws Exception { - if (dir == null) { + protected void a(String projectPath, File templateDir, Map configMap, CreateFileConfig createFileConfig) throws Exception { + if (templateDir == null) { throw new IllegalStateException("'templateRootDir' must be not null"); } else { - log.info(" load template from templateRootDir = '" + dir.getAbsolutePath() + "',stylePath ='" + createFileConfig.getStylePath() + "', out GenerateRootDir:" + com.jero.codegenerate.properties.CodeConfigProperties.projectPath); - List var5 = FileHelper.a(dir); - log.debug("----srcFiles----size-----------" + var5.size()); - log.debug("----srcFiles----list------------" + var5.toString()); + log.info(" load template from templateRootDir = '" + templateDir.getAbsolutePath() + "',stylePath ='" + createFileConfig.getStylePath() + "', out GenerateRootDir:" + com.jero.codegenerate.properties.CodeConfigProperties.projectPath); + List fileList = FileHelper.listFileAndSort(templateDir); + log.debug("----srcFiles----size-----------" + fileList.size()); + log.debug("----srcFiles----list------------" + fileList.toString()); - for(int var6 = 0; var6 < var5.size(); ++var6) { - File var7 = (File)var5.get(var6); - this.a(projectPath, dir, configMap, var7, createFileConfig); + for(int i = 0; i < fileList.size(); ++i) { + File srcFile = (File)fileList.get(i); + this.a(projectPath, templateDir, configMap, srcFile, createFileConfig); } } } - protected void a(String var1, File var2, Map var3, File var4, CreateFileConfig var5) throws Exception { - log.debug("-------templateRootDir--" + var2.getPath()); - log.debug("-------srcFile--" + var4.getPath()); - String var6 = FileHelper.a(var2, var4); + protected void a(String projectPath, File templateDir, Map configMap, File srcFile, CreateFileConfig createFileConfig) throws Exception { + log.debug("-------templateRootDir--" + templateDir.getPath()); + log.debug("-------srcFile--" + srcFile.getPath()); + String templateFile = FileHelper.a(templateDir, srcFile); try { - log.debug("-------templateFile--" + var6); - if (var5.getStylePath() != null && !"".equals(var5.getStylePath()) && !var6.replace(File.separator, ".").startsWith(var5.getStylePath())) { + log.debug("-------templateFile--" + templateFile); + if (createFileConfig.getStylePath() != null && !"".equals(createFileConfig.getStylePath()) && !templateFile.replace(File.separator, ".").startsWith(createFileConfig.getStylePath())) { return; } - String var7 = a(var3, var6, var5); + String var7 = a(configMap, templateFile, createFileConfig); log.debug("-------outputFilepath--" + var7); String var8; if (var7.startsWith("java")) { - var8 = var1 + File.separator + com.jero.codegenerate.properties.CodeConfigProperties.h.replace(".", File.separator); + var8 = projectPath + File.separator + com.jero.codegenerate.properties.CodeConfigProperties.h.replace(".", File.separator); var7 = var7.substring("java".length()); var7 = var8 + var7; log.debug("-------java----outputFilepath--" + var7); - this.a(var6, var7, var3, var5); + this.a(templateFile, var7, configMap, createFileConfig); } else if (var7.startsWith("webapp")) { - var8 = var1 + File.separator + com.jero.codegenerate.properties.CodeConfigProperties.i.replace(".", File.separator); + var8 = projectPath + File.separator + com.jero.codegenerate.properties.CodeConfigProperties.i.replace(".", File.separator); var7 = var7.substring("webapp".length()); var7 = var8 + var7; log.debug("-------webapp---outputFilepath---" + var7); - this.a(var6, var7, var3, var5); + this.a(templateFile, var7, configMap, createFileConfig); } } catch (Exception var10) { log.error(var10.toString(), var10); @@ -110,7 +110,7 @@ public class BaseCodeGenerate { } protected Template a(String var1, CreateFileConfig var2) throws IOException { - return FreemarkerHelper.a(var2.listFile(), charcterSet, var1).getTemplate(var1); + return FreemarkerHelper.a(var2.listTemplateRootDirs(), charcterSet, var1).getTemplate(var1); } protected boolean a(File var1) { @@ -280,7 +280,7 @@ public class BaseCodeGenerate { } } - Configuration var10 = FreemarkerHelper.a(var2.listFile(), charcterSet, "/"); + Configuration var10 = FreemarkerHelper.a(var2.listTemplateRootDirs(), charcterSet, "/"); var3 = FreemarkerHelper.a(var3, var0, var10); String var11 = var2.getStylePath(); if (var11 != null && var11 != "") { diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/util/FileHelper.java b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/util/FileHelper.java index b98556c9..3b61bc22 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/util/FileHelper.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater-core/src/main/java/com/jero/codegenerate/generate/util/FileHelper.java @@ -30,8 +30,13 @@ public class FileHelper { dirNameList.add(".gitignore"); fileSuffixList.add(".ftl"); } - - public static List a(File dir) throws IOException { + /** + * 获取文件目录下的所有文件排序后的集合 + * @date 2021/4/2 11:30 + * @param dir + * @return java.util.List + */ + public static List listFileAndSort(File dir) throws IOException { ArrayList list = new ArrayList(); dfsAndAddFile(dir, (List)list); Collections.sort(list, new Comparator() { @@ -42,7 +47,13 @@ public class FileHelper { }); return list; } - + /** + * 深度优先搜索目录下的文件 + * @date 2021/4/2 11:31 + * @param dir 目录 + * @param list 存放文件的集合 + * @return void + */ public static void dfsAndAddFile(File dir, List list) throws IOException { log.debug("---------dir------------path: " + dir.getPath() + " -- isHidden --: " + dir.isHidden() + " -- isDirectory --: " + dir.isDirectory()); if (!dir.isHidden() && dir.isDirectory() && !isContainDir(dir)) { @@ -57,28 +68,28 @@ public class FileHelper { } - public static String a(File var0, File var1) { - if (var0.equals(var1)) { + public static String a(File templateDir, File srcFile) { + if (templateDir.equals(srcFile)) { return ""; } else { - return var0.getParentFile() == null ? var1.getAbsolutePath().substring(var0.getAbsolutePath().length()) : var1.getAbsolutePath().substring(var0.getAbsolutePath().length() + 1); + return templateDir.getParentFile() == null ? srcFile.getAbsolutePath().substring(templateDir.getAbsolutePath().length()) : srcFile.getAbsolutePath().substring(templateDir.getAbsolutePath().length() + 1); } } - public static boolean b(File var0) { - return var0.isDirectory() ? false : a(var0.getName()); + public static boolean b(File file) { + return file.isDirectory() ? false : a(file.getName()); } public static boolean a(String var0) { return !StringUtils.isBlank(b(var0)); } - public static String b(String var0) { - if (var0 == null) { + public static String b(String fileName) { + if (fileName == null) { return null; } else { - int var1 = var0.indexOf("."); - return var1 == -1 ? "" : var0.substring(var1 + 1); + int var1 = fileName.indexOf("."); + return var1 == -1 ? "" : fileName.substring(var1 + 1); } }