新增: 多模块路径获取方法

master
曹世达 6 months ago
parent 5ebe0723ee
commit 8621e4f244

@ -34,7 +34,7 @@ public class PoBuilder {
public void build() { public void build() {
for (TableInfo tableInfo : tableInfoList) { for (TableInfo tableInfo : tableInfoList) {
String beanName = tableInfo.getBeanName(); String beanName = tableInfo.getBeanName();
String packagePath = PathUtils.getPoPath(); String packagePath = PathUtils.getPoPackagePath();
FileUtils.mkdir(packagePath); FileUtils.mkdir(packagePath);
String outputPath = PathUtils.getPoJavaPath(beanName); String outputPath = PathUtils.getPoJavaPath(beanName);

@ -43,23 +43,32 @@ public class CfgConsts {
// 常量配置 // 常量配置
public static final String VALUE_TABLE = "table"; public static final String VALUE_TABLE = "table";
// 默认值配 // JAVA 工程默认值配
public static final String DEFAULT_PROJECT_PATH_JAVA = "src/main/java"; public static final String DEFAULT_PROJECT_PATH_JAVA = "src/main/java";
public static final String DEFAULT_PROJECT_PATH_RESOURCES = "src/main/resources"; public static final String DEFAULT_PROJECT_PATH_RESOURCES = "src/main/resources";
public static final String DEFAULT_PACKAGE_PO = "repository.po";
public static final String DEFAULT_PACKAGE_MAPPER = "repository.mapper"; // 包名默认值配置
public static final String DEFAULT_PACKAGE_SERVICE = "service"; public static final String DEFAULT_PACKAGE_NAME_PO = "repository.po";
public static final String DEFAULT_PACKAGE_QUERY = "controller.query"; public static final String DEFAULT_PACKAGE_NAME_MAPPER = "repository.mapper";
public static final String DEFAULT_PACKAGE_FORM = "controller.form"; public static final String DEFAULT_PACKAGE_NAME_SERVICE = "service";
public static final String DEFAULT_PACKAGE_VIEW = "controller.view"; public static final String DEFAULT_PACKAGE_NAME_QUERY = "controller.query";
public static final String DEFAULT_PACKAGE_CONTROLLER = "controller"; public static final String DEFAULT_PACKAGE_NAME_FORM = "controller.form";
public static final String DEFAULT_CLASS_NAME_SUFFIX_PO = ""; public static final String DEFAULT_PACKAGE_NAME_VIEW = "controller.view";
public static final String DEFAULT_CLASS_NAME_SUFFIX_MAPPER = "Mapper"; public static final String DEFAULT_PACKAGE_NAME_CONTROLLER = "controller";
public static final String DEFAULT_CLASS_NAME_SUFFIX_SERVICE = "Service";
public static final String DEFAULT_CLASS_NAME_SUFFIX_QUERY = "Query"; // 模块名默认值配置
public static final String DEFAULT_CLASS_NAME_SUFFIX_FORM = "Form"; public static final String DEFAULT_MODULE_NAME_CONTROLLER = "controller";
public static final String DEFAULT_CLASS_NAME_SUFFIX_VIEW = "View"; public static final String DEFAULT_MODULE_NAME_SERVICE = "service";
public static final String DEFAULT_CLASS_NAME_SUFFIX_CONTROLLER = "Controller"; public static final String DEFAULT_MODULE_NAME_REPOSITORY = "repository";
// JAVA文件名后缀默认值配置
public static final String DEFAULT_JAVA_NAME_SUFFIX_PO = "";
public static final String DEFAULT_JAVA_NAME_SUFFIX_MAPPER = "Mapper";
public static final String DEFAULT_JAVA_NAME_SUFFIX_SERVICE = "Service";
public static final String DEFAULT_JAVA_NAME_SUFFIX_QUERY = "Query";
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";
// 私有化构造器 // 私有化构造器
private CfgConsts() {} private CfgConsts() {}

@ -14,7 +14,7 @@ public class PathUtils {
return CONFIG.getString(CfgConsts.PROJECT_PATH_BASE); return CONFIG.getString(CfgConsts.PROJECT_PATH_BASE);
} }
public static String getJavaSrcPath() { public static String getJavaPath() {
String basePath = getProjectPath(); String basePath = getProjectPath();
String configPath = CONFIG.getString(CfgConsts.PROJECT_PATH_JAVA); String configPath = CONFIG.getString(CfgConsts.PROJECT_PATH_JAVA);
String defaultPath = CfgConsts.DEFAULT_PROJECT_PATH_JAVA; String defaultPath = CfgConsts.DEFAULT_PROJECT_PATH_JAVA;
@ -22,89 +22,103 @@ public class PathUtils {
return Paths.get(basePath, path).toString(); return Paths.get(basePath, path).toString();
} }
public static String getPackagePath() { private static String packageToPath(String packageName) {
String basePath = getJavaSrcPath(); return packageName.replaceAll("\\.", "/");
String name = CONFIG.getString(CfgConsts.PACKAGE_NAME_BASE);
String path = name.replaceAll("\\.", "/");
return Paths.get(basePath, path).toString();
} }
public static String getPathBasedPackage(String configPath, String defaultPath) { public static String getPackageBasePath(String moduleName) {
String basePath = getPackagePath(); String basePath = getJavaPath();
String path = StrUtils.defaultIfBlank(configPath, defaultPath); String packageName = CONFIG.getString(CfgConsts.PACKAGE_NAME_BASE);
return Paths.get(basePath, path).toString(); String path = packageToPath(packageName);
return Paths.get(basePath, moduleName, path).toString();
} }
public static String getServicePath(String className) { public static String getPathBasedPackage(
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_SERVICE); String moduleName, String configName, String defaultName
String defaultPath = CfgConsts.DEFAULT_PACKAGE_MAPPER; ) {
return getPathBasedPackage(configPath, defaultPath); String basePath = getPackageBasePath(moduleName);
String packageName = StrUtils.defaultIfBlank(configName, defaultName);
String path = packageToPath(packageName);
return Paths.get(basePath, path).toString();
} }
public static String getControllerPath(String className) { public static boolean isMultiModule() {
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_CONTROLLER); return CONFIG.getBoolean(CfgConsts.MODULE_MULTIPLE);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_CONTROLLER;
return getPathBasedPackage(configPath, defaultPath);
} }
public static String getViewPath(String className) { public static String getModuleName(String configName, String defaultName) {
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_VIEW); if (!isMultiModule()) {
String defaultPath = CfgConsts.DEFAULT_PACKAGE_VIEW; return "";
return getPathBasedPackage(configPath, defaultPath); }
return StrUtils.defaultIfBlank(configName, defaultName);
} }
public static String getFormPath(String className) { public static String getRepositoryModuleName() {
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_FORM); String configName = CONFIG.getString(CfgConsts.MODULE_NAME_REPOSITORY);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_FORM; String defaultName = CfgConsts.DEFAULT_MODULE_NAME_REPOSITORY;
return getPathBasedPackage(configPath, defaultPath); return getModuleName(configName, defaultName);
} }
public static String getQueryPath(String className) { public static String getServiceModuleName() {
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_QUERY); String configName = CONFIG.getString(CfgConsts.MODULE_NAME_SERVICE);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_QUERY; String defaultName = CfgConsts.DEFAULT_MODULE_NAME_SERVICE;
return getPathBasedPackage(configPath, defaultPath); return getModuleName(configName, defaultName);
} }
public static String getPoPath() { public static String getControllerModuleName() {
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_PO); String configName = CONFIG.getString(CfgConsts.MODULE_NAME_CONTROLLER);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_PO; String defaultName = CfgConsts.DEFAULT_MODULE_NAME_CONTROLLER;
return getPathBasedPackage(configPath, defaultPath); return getModuleName(configName, defaultName);
} }
public static String getMapperPath() {
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_MAPPER);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_MAPPER;
return getPathBasedPackage(configPath, defaultPath);
}
public static String getServicePath() { public static String getServicePackagePath() {
String moduleName = getServiceModuleName();
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_SERVICE); String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_SERVICE);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_MAPPER; String defaultPath = CfgConsts.DEFAULT_PACKAGE_NAME_MAPPER;
return getPathBasedPackage(configPath, defaultPath); return getPathBasedPackage(moduleName, configPath, defaultPath);
} }
public static String getControllerPath() { public static String getControllerPackagePath() {
String moduleName = getControllerModuleName();
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_CONTROLLER); String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_CONTROLLER);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_CONTROLLER; String defaultPath = CfgConsts.DEFAULT_PACKAGE_NAME_CONTROLLER;
return getPathBasedPackage(configPath, defaultPath); return getPathBasedPackage(moduleName, configPath, defaultPath);
} }
public static String getViewPath() { public static String getViewPackagePath() {
String moduleName = getControllerModuleName();
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_VIEW); String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_VIEW);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_VIEW; String defaultPath = CfgConsts.DEFAULT_PACKAGE_NAME_VIEW;
return getPathBasedPackage(configPath, defaultPath); return getPathBasedPackage(moduleName, configPath, defaultPath);
} }
public static String getFormPath() { public static String getFormPackagePath() {
String moduleName = getControllerModuleName();
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_FORM); String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_FORM);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_FORM; String defaultPath = CfgConsts.DEFAULT_PACKAGE_NAME_FORM;
return getPathBasedPackage(configPath, defaultPath); return getPathBasedPackage(moduleName, configPath, defaultPath);
} }
public static String getQueryPath() { public static String getQueryPackagePath() {
String moduleName = getControllerModuleName();
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_QUERY); String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_QUERY);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_QUERY; String defaultPath = CfgConsts.DEFAULT_PACKAGE_NAME_QUERY;
return getPathBasedPackage(configPath, defaultPath); return getPathBasedPackage(moduleName, configPath, defaultPath);
}
public static String getPoPackagePath() {
String moduleName = getRepositoryModuleName();
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_PO);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_NAME_PO;
return getPathBasedPackage(moduleName, configPath, defaultPath);
}
public static String getMapperPackagePath() {
String moduleName = getRepositoryModuleName();
String configPath = CONFIG.getString(CfgConsts.PACKAGE_NAME_MAPPER);
String defaultPath = CfgConsts.DEFAULT_PACKAGE_NAME_MAPPER;
return getPathBasedPackage(moduleName, configPath, defaultPath);
} }
private static String getFilename(String className, String suffix) { private static String getFilename(String className, String suffix) {
@ -112,27 +126,27 @@ public class PathUtils {
} }
public static String getPoJavaPath(String className) { public static String getPoJavaPath(String className) {
String basePath = getPoPath(); String basePath = getPoPackagePath();
String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_PO); String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_PO);
String defaultSuffix = CfgConsts.DEFAULT_CLASS_NAME_SUFFIX_PO; String defaultSuffix = CfgConsts.DEFAULT_JAVA_NAME_SUFFIX_PO;
String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix); String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix);
String filename = getFilename(className, defaultSuffix); String filename = getFilename(className, defaultSuffix);
return Paths.get(basePath, filename).toString(); return Paths.get(basePath, filename).toString();
} }
public static String getMapperJavaPath(String className) { public static String getMapperJavaPath(String className) {
String basePath = getMapperPath(); String basePath = getMapperPackagePath();
String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_MAPPER); String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_MAPPER);
String defaultSuffix = CfgConsts.DEFAULT_CLASS_NAME_SUFFIX_MAPPER; String defaultSuffix = CfgConsts.DEFAULT_JAVA_NAME_SUFFIX_MAPPER;
String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix); String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix);
String filename = getFilename(className, suffix); String filename = getFilename(className, suffix);
return Paths.get(basePath, filename).toString(); return Paths.get(basePath, filename).toString();
} }
public static String getServiceJavaPath(String className) { public static String getServiceJavaPath(String className) {
String basePath = getServicePath(); String basePath = getServicePackagePath();
String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_SERVICE); String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_SERVICE);
String defaultSuffix = CfgConsts.DEFAULT_CLASS_NAME_SUFFIX_SERVICE; String defaultSuffix = CfgConsts.DEFAULT_JAVA_NAME_SUFFIX_SERVICE;
String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix); String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix);
String filename = getFilename(className, suffix); String filename = getFilename(className, suffix);
return Paths.get(basePath, filename).toString(); return Paths.get(basePath, filename).toString();
@ -140,9 +154,9 @@ public class PathUtils {
public static String getControllerJavaPath(String className) { public static String getControllerJavaPath(String className) {
String basePath = getControllerPath(); String basePath = getControllerPackagePath();
String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_CONTROLLER); String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_CONTROLLER);
String defaultSuffix = CfgConsts.DEFAULT_CLASS_NAME_SUFFIX_CONTROLLER; String defaultSuffix = CfgConsts.DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER;
String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix); String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix);
String filename = getFilename(className, suffix); String filename = getFilename(className, suffix);
return Paths.get(basePath, filename).toString(); return Paths.get(basePath, filename).toString();
@ -150,9 +164,9 @@ public class PathUtils {
public static String getFormJavaPath(String className) { public static String getFormJavaPath(String className) {
String basePath = getFormPath(); String basePath = getFormPackagePath();
String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_CONTROLLER); String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_CONTROLLER);
String defaultSuffix = CfgConsts.DEFAULT_CLASS_NAME_SUFFIX_CONTROLLER; String defaultSuffix = CfgConsts.DEFAULT_JAVA_NAME_SUFFIX_CONTROLLER;
String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix); String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix);
String filename = getFilename(className, suffix); String filename = getFilename(className, suffix);
return Paths.get(basePath, filename).toString(); return Paths.get(basePath, filename).toString();
@ -160,18 +174,18 @@ public class PathUtils {
public static String getQueryJavaPath(String className) { public static String getQueryJavaPath(String className) {
String basePath = getQueryPath(); String basePath = getQueryPackagePath();
String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_QUERY); String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_QUERY);
String defaultSuffix = CfgConsts.DEFAULT_CLASS_NAME_SUFFIX_QUERY; String defaultSuffix = CfgConsts.DEFAULT_JAVA_NAME_SUFFIX_QUERY;
String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix); String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix);
String filename = getFilename(className, suffix); String filename = getFilename(className, suffix);
return Paths.get(basePath, filename).toString(); return Paths.get(basePath, filename).toString();
} }
public static String getViewJavaPath(String className) { public static String getViewJavaPath(String className) {
String basePath = getViewPath(); String basePath = getViewPackagePath();
String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_VIEW); String configSuffix = CONFIG.getString(CfgConsts.JAVA_NAME_SUFFIX_VIEW);
String defaultSuffix = CfgConsts.DEFAULT_CLASS_NAME_SUFFIX_VIEW; String defaultSuffix = CfgConsts.DEFAULT_JAVA_NAME_SUFFIX_VIEW;
String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix); String suffix = StrUtils.defaultIfBlank(configSuffix, defaultSuffix);
String filename = getFilename(className, suffix); String filename = getFilename(className, suffix);
return Paths.get(basePath, filename).toString(); return Paths.get(basePath, filename).toString();

@ -10,9 +10,31 @@ class PathUtilsTest {
System.out.println(projectPath); System.out.println(projectPath);
} }
@Test
void getJavaPath(){
String javaPath = PathUtils.getJavaPath();
System.out.println(javaPath);
}
@Test @Test
void getPackagePath() { void getPackagePath() {
String packagePath = PathUtils.getPackagePath(); String packagePath = PathUtils.getPackageBasePath("service");
System.out.println(packagePath); System.out.println(packagePath);
} }
@Test
void getRepositoryModuleName() {
String repositoryModuleName = PathUtils.getRepositoryModuleName();
System.out.println(repositoryModuleName);
}
@Test
void getRepositoryPackageName() {
String poPackagePath = PathUtils.getPoPackagePath();
System.out.println(poPackagePath);
String viewPackagePath = PathUtils.getViewPackagePath();
System.out.println(viewPackagePath);
}
} }
Loading…
Cancel
Save