|
@@ -1,13 +1,81 @@
|
|
|
package com.shanghaichengdi.ghjgitem;
|
|
|
|
|
|
+import cn.smallbun.screw.core.Configuration;
|
|
|
+import cn.smallbun.screw.core.engine.EngineConfig;
|
|
|
+import cn.smallbun.screw.core.engine.EngineFileType;
|
|
|
+import cn.smallbun.screw.core.engine.EngineTemplateType;
|
|
|
+import cn.smallbun.screw.core.execute.DocumentationExecute;
|
|
|
+import cn.smallbun.screw.core.process.ProcessConfig;
|
|
|
+import com.zaxxer.hikari.HikariDataSource;
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
import org.springframework.boot.test.context.SpringBootTest;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
@SpringBootTest
|
|
|
class GhjgItemServerApplicationTests {
|
|
|
|
|
|
@Test
|
|
|
- void contextLoads() {
|
|
|
+ void generate() {
|
|
|
+ // 生成文件配置
|
|
|
+ EngineConfig engineConfig = EngineConfig.builder()
|
|
|
+ // 生成文件路径,自己mac本地的地址,这里需要自己更换下路径
|
|
|
+ .fileOutputDir("E:\\DataShareFolder\\tableStructure")
|
|
|
+ // 打开目录
|
|
|
+ .openOutputDir(false)
|
|
|
+ // 文件类型 HTML/WORD/MD 三种格式
|
|
|
+ .fileType(EngineFileType.WORD)
|
|
|
+ // 生成模板实现
|
|
|
+ .produceType(EngineTemplateType.freemarker).build();
|
|
|
+
|
|
|
+ //数据库名称
|
|
|
+
|
|
|
+ HikariDataSource hikariDataSource = new HikariDataSource();
|
|
|
+ //设置数据库连接
|
|
|
+ hikariDataSource.setJdbcUrl("jdbc:oracle:thin:@//10.114.4.56/shhwdb");
|
|
|
+ hikariDataSource.setUsername("ghjg_channel");
|
|
|
+ hikariDataSource.setPassword("GHJG@123");
|
|
|
+ // 生成文档配置(包含以下自定义版本号、描述等配置连接)
|
|
|
+ Configuration config = Configuration.builder()
|
|
|
+ .version("1.0.1")
|
|
|
+ .description("数据库设计文档")
|
|
|
+ .dataSource(hikariDataSource)
|
|
|
+ .engineConfig(engineConfig)
|
|
|
+ .produceConfig(getProcessConfig())
|
|
|
+ .build();
|
|
|
+
|
|
|
+ // 执行生成
|
|
|
+ new DocumentationExecute(config).execute();
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 配置想要生成的表+ 配置想要忽略的表
|
|
|
+ *
|
|
|
+ * @return 生成表配置
|
|
|
+ */
|
|
|
+ public static ProcessConfig getProcessConfig() {
|
|
|
+ // 忽略表名
|
|
|
+ List<String> ignoreTableName = Arrays.asList("testa_testa", "testb_testb");
|
|
|
+ // 忽略表前缀
|
|
|
+ List<String> ignorePrefix = Arrays.asList("testa", "testb");
|
|
|
+ // 忽略表后缀
|
|
|
+ List<String> ignoreSuffix = Arrays.asList("_testa", "_testb");
|
|
|
+ return ProcessConfig.builder()
|
|
|
+ //根据名称指定表生成 我需要生成所有表 这里暂时不设置
|
|
|
+ .designatedTableName(new ArrayList<>())
|
|
|
+ //根据表前缀生成 我需要生成所有表 这里暂时不设置
|
|
|
+ .designatedTablePrefix(new ArrayList<>())
|
|
|
+ //根据表后缀生成 我需要生成所有表 这里暂时不设置
|
|
|
+ .designatedTableSuffix(new ArrayList<>())
|
|
|
+ //忽略表名
|
|
|
+ .ignoreTableName(ignoreTableName)
|
|
|
+ //忽略表前缀
|
|
|
+ .ignoreTablePrefix(ignorePrefix)
|
|
|
+ //忽略表后缀
|
|
|
+ .ignoreTableSuffix(ignoreSuffix).build();
|
|
|
}
|
|
|
|
|
|
}
|