中国算力平台算力登记系统2.0
yanzhaofeige
6 days ago d16b55507ee921564c75032e46759bbea1b77455
commit | author | age
346e19 1 package com.odcc.cpzidc.test;
Y 2
3 import cn.smallbun.screw.core.Configuration;
4 import cn.smallbun.screw.core.engine.EngineConfig;
5 import cn.smallbun.screw.core.engine.EngineFileType;
6 import cn.smallbun.screw.core.engine.EngineTemplateType;
7 import cn.smallbun.screw.core.execute.DocumentationExecute;
8 import cn.smallbun.screw.core.process.ProcessConfig;
9 import com.zaxxer.hikari.HikariConfig;
10 import com.zaxxer.hikari.HikariDataSource;
11 import org.junit.Test;
12 import org.junit.runner.RunWith;
13 import org.springframework.beans.factory.annotation.Autowired;
14 import org.springframework.boot.test.context.SpringBootTest;
15 import org.springframework.context.ApplicationContext;
16 import org.springframework.test.context.junit4.SpringRunner;
17
18 import javax.sql.DataSource;
19 import java.util.ArrayList;
20 import java.util.Arrays;
21 import java.util.List;
22
23 @RunWith(SpringRunner.class)
24 @SpringBootTest
25 public class ScrewApplicationTests {
26
27    @Autowired
28    private ApplicationContext applicationContext;
29
30    @Test
31    public void contextLoads() {
32       HikariConfig hikariConfig = new HikariConfig();
33       hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");
34       hikariConfig.setJdbcUrl("jdbc:mysql://rm-2ze76o0e1v97mb1689o.mysql.rds.aliyuncs.com:23306/db_cpz_idc?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8");
35       hikariConfig.setUsername("laodai_20220711");
36       hikariConfig.setPassword("odc#cwei288^49");
37       //设置可以获取tables remarks信息
38       hikariConfig.addDataSourceProperty("useInformationSchema", "true");
39       hikariConfig.setMinimumIdle(2);
40       hikariConfig.setMaximumPoolSize(5);
41       DataSource dataSource = new HikariDataSource(hikariConfig);
42
43       // 生成文件配置
44       EngineConfig engineConfig = EngineConfig.builder()
45             // 生成文件路径,自己mac本地的地址,这里需要自己更换下路径
46             .fileOutputDir("/Users/daizhiping/V")
47             // 打开目录
48             .openOutputDir(false)
49             // 文件类型
50             .fileType(EngineFileType.WORD)
51             // 生成模板实现
52             .produceType(EngineTemplateType.freemarker).build();
53
54       // 生成文档配置(包含以下自定义版本号、描述等配置连接)
55       Configuration config = Configuration.builder()
56             .version("2.0.0")
57             .description("中国算力平台算力登记系统")
58             .dataSource(dataSource)
59             .engineConfig(engineConfig)
60             .produceConfig(getProcessConfig())
61             .build();
62
63       // 执行生成
64       new DocumentationExecute(config).execute();
65    }
66
67
68    /**
69     * 配置想要生成的表+ 配置想要忽略的表
70     * @return 生成表配置
71     */
72    public static ProcessConfig getProcessConfig(){
73       // 忽略表名
74       List<String> ignoreTableName = Arrays.asList("aa","test_group");
75       // 忽略表前缀,如忽略a开头的数据库表
76       List<String> ignorePrefix = Arrays.asList("gen_","qrtz_","sys_");
77       // 忽略表后缀
78       List<String> ignoreSuffix = Arrays.asList("_test","czb_");
79
80       return ProcessConfig.builder()
81             //根据名称指定表生成
82             .designatedTableName(new ArrayList<>())
83             //根据表前缀生成
84             .designatedTablePrefix(new ArrayList<>())
85             //根据表后缀生成
86             .designatedTableSuffix(new ArrayList<>())
87             //忽略表名
88             .ignoreTableName(ignoreTableName)
89             //忽略表前缀
90             .ignoreTablePrefix(ignorePrefix)
91             //忽略表后缀
92             .ignoreTableSuffix(ignoreSuffix).build();
93    }
94 }