From 932777e9d6dc8dc5d9edbfc9117639ae02d96956 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 14 十月 2021 11:55:07 +0800 Subject: [PATCH] 自动化代码生成优化 --- src/main/java/org/yeshi/utils/generater/GeneraterManager.java | 55 +++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 39 insertions(+), 16 deletions(-) diff --git a/src/main/java/org/yeshi/utils/generater/GeneraterManager.java b/src/main/java/org/yeshi/utils/generater/GeneraterManager.java index 30f5916..68e1912 100644 --- a/src/main/java/org/yeshi/utils/generater/GeneraterManager.java +++ b/src/main/java/org/yeshi/utils/generater/GeneraterManager.java @@ -21,6 +21,7 @@ import org.yeshi.utils.mybatis.BaseMapper; import java.io.File; +import java.io.IOException; import java.lang.annotation.Annotation; /** @@ -62,7 +63,25 @@ if (!f.exists()) { f.mkdirs(); } - return new File(f.getAbsolutePath(), packageName.replace(".", "/")).getAbsolutePath(); + f = new File(f.getAbsolutePath(), packageName.replace(".", "/")); + if (!f.exists()) { + f.mkdirs(); + } + return f.getAbsolutePath(); + } + + /** + * @return void + * @author hxh + * @description 淇濆瓨鏂囦欢 + * @date 10:06 2021/10/14 + * @param: data + * @param: path + **/ + private void saveFile(String data, String path) throws IOException { + if (!new File(path).exists()) + new File(path).createNewFile(); + FileUtil.saveAsFileByte(data.getBytes("UTF-8"), path); } public void createException(String packageName, Class base) { @@ -71,7 +90,7 @@ ExceptionVO vo = new ExceptionVO.Builder().setEntity(entity).setPackageName(packageName).setBase(new ClassInfo(base.getSimpleName(), base.getName())).build(); String result = GeneraterUtil.createException(vo); //淇濆瓨 - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), path); + saveFile(result, path); } catch (Exception e) { e.printStackTrace(); } @@ -93,7 +112,7 @@ .setEntity(entity).build(); String result = GeneraterUtil.createMongoDBDao(vo); //淇濆瓨 - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, daoName).getAbsolutePath()); + saveFile(result, new File(path, daoName + ".java").getAbsolutePath()); return vo; } @@ -115,11 +134,11 @@ .build(); String result = GeneraterUtil.createMybatisDBMapper(vo); //淇濆瓨 - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, mapperName + ".java").getAbsolutePath()); + saveFile(result, new File(path, mapperName + ".java").getAbsolutePath()); if (!new File(mapperDir).exists()) new File(mapperDir).mkdirs(); result = GeneraterUtil.createMybatisDBMapperXML(vo); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(mapperDir, mapperName + ".xml").getAbsolutePath()); + saveFile(result, new File(mapperDir, mapperName + ".xml").getAbsolutePath()); return vo; } @@ -135,7 +154,7 @@ String path = getDirPath(packageName); QueryVO queryVO = new QueryVO.Builder().setEntity(entity).setPackageName(packageName).build(); String result = GeneraterUtil.createQuery(queryVO); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, queryVO.getClassName() + ".java").getAbsolutePath()); + saveFile(result, new File(path, queryVO.getClassName() + ".java").getAbsolutePath()); return queryVO; } @@ -162,7 +181,7 @@ .setService(new ClassInfo(serviceName, interPackageName + "." + serviceName)) .build(); String result = GeneraterUtil.createService(vo); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, serviceName + ".java").getAbsolutePath()); + saveFile(result, new File(path, serviceName + ".java").getAbsolutePath()); //鍒涘缓service瀹炵幇 String serviceImplName = entity.getSimpleName() + "ServiceImpl"; @@ -176,7 +195,7 @@ .setDaoQuery(new ClassInfo("DaoQuery", dao.getClazz() + ".DaoQuery")) .build(); result = GeneraterUtil.createServiceImpl(implVO); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, serviceImplName + ".java").getAbsolutePath()); + saveFile(result, new File(path, serviceImplName + ".java").getAbsolutePath()); return vo; } @@ -194,28 +213,29 @@ public void createAdmin(String controllerPackage, String htmlDir, ClassInfo query, ClassInfo service) throws Exception { String path = getDirPath(controllerPackage); - String controllerName = entity.getSimpleName() + "AdminController"; + AdminGeneraterInfo generaterInfo = new AdminGeneraterInfo.Builder().setEntityClass(entity).build(); String htmlNamePrefix = getHtmlNameFromEntityName(entity.getSimpleName()); - AdminControllerInfoVO vo = new AdminControllerInfoVO.Builder().setAdminInfo(generaterInfo).setPackageName(controllerName).setQueryVO(query).setService(service).build(); + AdminControllerInfoVO vo = new AdminControllerInfoVO.Builder().setAdminInfo(generaterInfo).setPackageName(controllerPackage).setQueryVO(query).setService(service).build(); + String controllerName = vo.getControllerName(); //鐢熸垚controller String result = GeneraterUtil.createAdminController(vo); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(path, controllerName + ".java").getAbsolutePath()); + saveFile(result, new File(path, controllerName + ".java").getAbsolutePath()); result = GeneraterUtil.createAdminPageForList(generaterInfo); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(htmlDir, htmlNamePrefix + "_list.html").getAbsolutePath()); + saveFile(result, new File(htmlDir, htmlNamePrefix + "_list.html").getAbsolutePath()); if (generaterInfo.getAddFormRows() != null && generaterInfo.getAddFormRows().size() > 0) { result = GeneraterUtil.createAdminPageForAdd(generaterInfo); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(htmlDir, htmlNamePrefix + "_add.html").getAbsolutePath()); + saveFile(result, new File(htmlDir, htmlNamePrefix + "_add.html").getAbsolutePath()); } if (generaterInfo.getUpdateFormRows() != null && generaterInfo.getUpdateFormRows().size() > 0) { result = GeneraterUtil.createAdminPageForUpdate(generaterInfo); - FileUtil.saveAsFileByte(result.getBytes("UTF-8"), new File(htmlDir, htmlNamePrefix + "_update.html").getAbsolutePath()); + saveFile(result, new File(htmlDir, htmlNamePrefix + "_update.html").getAbsolutePath()); } } @@ -276,8 +296,11 @@ serviceClass = serviceInfoVO.getService(); } - //鍒涘缓Admin妯″潡 - createAdmin(adminParams.getControllerPackage(), adminParams.getHtmlDir(), queryClass, serviceClass); + if (queryClass != null && serviceClass != null) { + if (adminParams != null) + //鍒涘缓Admin妯″潡 + createAdmin(adminParams.getControllerPackage(), adminParams.getHtmlDir(), queryClass, serviceClass); + } } /** -- Gitblit v1.8.0