From 058a11fb3ff22c77a152853794fe1aae13cee640 Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期三, 06 十二月 2023 10:23:49 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes
---
springboot-vue3/src/main/java/MyGenerator.java | 176 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 176 insertions(+), 0 deletions(-)
diff --git a/springboot-vue3/src/main/java/MyGenerator.java b/springboot-vue3/src/main/java/MyGenerator.java
new file mode 100644
index 0000000..46475de
--- /dev/null
+++ b/springboot-vue3/src/main/java/MyGenerator.java
@@ -0,0 +1,176 @@
+
+
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
+import com.baomidou.mybatisplus.generator.AutoGenerator;
+import com.baomidou.mybatisplus.generator.InjectionConfig;
+import com.baomidou.mybatisplus.generator.config.*;
+import com.baomidou.mybatisplus.generator.config.po.TableInfo;
+import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
+import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * mybatis-plus-generator浠g爜鐢熸垚鍣�
+ * 淇敼閰嶇疆鍚庣洿鎺ヨ繍琛宮ain鏂规硶鍗冲彲
+ */
+public class MyGenerator {
+
+ /** 鏁版嵁婧愰厤缃�*/
+ private static final String jdbc = "jdbc:mysql://localhost:3306/canadames?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
+ private static final String driverName = "com.mysql.cj.jdbc.Driver";
+
+ private static final String username = "root";
+ private static final String password = "beibo.123/";
+ /** 鍖呭悕*/
+ private static final String moduleName = "device";
+ /** 琛ㄥ悕鍓嶇紑*/
+ private static final String beginName = "device";
+ /** 闇�瑕佺敓鎴愪唬鐮佺殑琛�*/
+ private static final String [] tables = new String[]{"device"};
+
+
+
+
+ public static void main(String[] args) {
+
+ // 瀹樻柟缃戠珯锛歨ttps://baomidou.com/pages/d357af/#%E8%87%AA%E5%AE%9A%E4%B9%89%E5%B1%9E%E6%80%A7%E6%B3%A8%E5%85%A5
+
+ // 鍙傝�冪綉绔欙細https://blog.csdn.net/kinghmj01/article/details/97748509
+
+ // 浠g爜鐢熸垚鍣�
+ AutoGenerator mpg = new AutoGenerator();
+
+ // 鍏ㄥ眬閰嶇疆
+ GlobalConfig gc = new GlobalConfig();
+ // 褰撳墠椤圭洰璺緞
+ String projectPath = System.getProperty("user.dir");
+ // 褰撳墠椤圭洰鐨勪笅鐨勮矾寰�
+ gc.setOutputDir(projectPath + "/src/main/java");
+ // 浣滆��
+ gc.setAuthor("yyq");
+ // 鏄惁鎵撳紑杈撳嚭鐩綍 榛樿涓簍rue
+ gc.setOpen(false);
+ // 瀹炰綋灞炴�� Swagger2 娉ㄨВ
+ gc.setSwagger2(true);
+
+ // 鑷畾涔夋枃浠跺懡鍚嶏紝娉ㄦ剰 %s 浼氳嚜鍔ㄥ~鍏呰〃瀹炰綋灞炴�э紒
+ gc.setControllerName("%sController");
+ gc.setServiceName("%sService");
+ gc.setServiceImplName("%sServiceImpl");
+ gc.setMapperName("%sDao");
+ gc.setEntityName("%sEntity");
+ mpg.setGlobalConfig(gc);
+
+ // 鏁版嵁婧愰厤缃�
+ DataSourceConfig dsc = new DataSourceConfig();
+ // dsc.setSchemaName("public");
+ dsc.setUrl(jdbc);
+ dsc.setDriverName(driverName);
+ dsc.setUsername(username);
+ dsc.setPassword(password);
+ mpg.setDataSource(dsc);
+
+ // 璁剧疆鍖呭悕
+ PackageConfig pc = new PackageConfig();
+ // 鐢ㄤ簬鍖呭悕銆佽〃鍚嶅墠缂�
+ //pc.setModuleName(moduleName);
+ // 鐢熸垚鍒伴偅浜涘寘涓� 濡� com.modules涓诲寘涓嬬殑 controller.sys.TestController
+ pc.setParent("com.canadames");
+ pc.setController("controller."+moduleName);
+ pc.setService("service."+moduleName);
+ pc.setServiceImpl("service."+moduleName+".impl");
+ pc.setMapper("mapper."+moduleName);
+ pc.setEntity("entity."+moduleName);
+ mpg.setPackageInfo(pc);
+
+ // 鑷畾涔夐厤缃�
+ InjectionConfig cfg = new InjectionConfig() {
+ @Override
+ public void initMap() {
+ // to do nothing
+ }
+ };
+
+ // 濡傛灉妯℃澘寮曟搸鏄� freemarker
+ String templatePath = "/templates/mapper.xml.ftl";
+ // 濡傛灉妯℃澘寮曟搸鏄� velocity
+ // String templatePath = "/templates/mapper.xml.vm";
+
+ // 鑷畾涔夎緭鍑洪厤缃�
+ List<FileOutConfig> focList = new ArrayList<>();
+ // 鑷畾涔夐厤缃細琚紭鍏堣緭鍑�
+ focList.add(new FileOutConfig(templatePath) {
+ @Override
+ public String outputFile(TableInfo tableInfo) {
+ // 鑷畾涔夎緭鍑烘枃浠跺悕 锛� 濡傛灉浣� Entity 璁剧疆浜嗗墠鍚庣紑銆佹澶勬敞鎰� xml 鐨勫悕绉颁細璺熺潃鍙戠敓鍙樺寲锛侊紒
+ return projectPath + "/src/main/resources/mapper/" + moduleName + "/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML;
+ }
+ });
+ /*
+ cfg.setFileCreate(new IFileCreate() {
+ @Override
+ public boolean isCreate(ConfigBuilder configBuilder, FileType fileType, String filePath) {
+ // 鍒ゆ柇鑷畾涔夋枃浠跺す鏄惁闇�瑕佸垱寤�
+ checkDir("璋冪敤榛樿鏂规硶鍒涘缓鐨勭洰褰曪紝鑷畾涔夌洰褰曠敤");
+ if (fileType == FileType.MAPPER) {
+ // 宸茬粡鐢熸垚 mapper 鏂囦欢鍒ゆ柇瀛樺湪锛屼笉鎯抽噸鏂扮敓鎴愯繑鍥� false
+ return !new File(filePath).exists();
+ }
+ // 鍏佽鐢熸垚妯℃澘鏂囦欢
+ return true;
+ }
+ });
+ */
+ cfg.setFileOutConfigList(focList);
+ mpg.setCfg(cfg);
+
+ // 閰嶇疆妯℃澘
+ TemplateConfig templateConfig = new TemplateConfig();
+
+ // 閰嶇疆鑷畾涔夎緭鍑烘ā鏉�
+ //鎸囧畾鑷畾涔夋ā鏉胯矾寰勶紝娉ㄦ剰涓嶈甯︿笂.ftl/.vm, 浼氭牴鎹娇鐢ㄧ殑妯℃澘寮曟搸鑷姩璇嗗埆
+ // templateConfig.setEntity("templates/entity2.java");
+ // templateConfig.setService();
+ // templateConfig.setController();
+
+ templateConfig.setXml(null);
+ mpg.setTemplate(templateConfig);
+
+ // 绛栫暐閰嶇疆
+ StrategyConfig strategy = new StrategyConfig();
+
+ //闇�瑕佺敓鎴愮殑琛�
+ strategy.setInclude(tables);
+ strategy.setControllerMappingHyphenStyle(true);
+ //绫诲悕鐢熸垚绛栫暐锛氶┘宄板懡鍚�
+ strategy.setNaming(NamingStrategy.underline_to_camel);
+ //瀛楁鍚嶇敓鎴愭柟寮忥細椹煎嘲鍛藉悕
+ strategy.setColumnNaming(NamingStrategy.underline_to_camel);
+ // 琛ㄥ墠缂�
+ strategy.setTablePrefix(beginName+"_");
+
+ // 鍐欎簬鐖剁被涓殑鍏叡瀛楁锛堝湪鐖剁被涓凡缁忔湁鐨勪笉闇�瑕佺敓鎴愮殑瀛楁锛�
+ strategy.setSuperEntityColumns("id", "updateTime", "createTime");
+ // 姣忓眰鐨勭户鎵匡紙涓嶉渶瑕佸彲涓嶈缃級
+// strategy.setSuperControllerClass("com.common.controller.MyController");
+ strategy.setSuperServiceClass("com.baomidou.mybatisplus.extension.service.IService");
+ strategy.setSuperServiceImplClass("com.baomidou.mybatisplus.extension.service.impl.ServiceImpl");
+ strategy.setSuperMapperClass("com.baomidou.mybatisplus.core.mapper.BaseMapper");
+ //缁ф壙鐨勫睘鎬х埗绫�
+// strategy.setSuperEntityClass("com.common.entity.MyEntity");
+ strategy.setEntityLombokModel(true);
+ strategy.setRestControllerStyle(true);
+
+ mpg.setStrategy(strategy);
+
+ mpg.setTemplateEngine(new FreemarkerTemplateEngine());
+
+ mpg.execute();
+ }
+
+
+
+}
+
--
Gitblit v1.8.0