当前位置:网站首页>Screw数据库文档生成器
Screw数据库文档生成器
2022-06-22 18:00:00 【阿国GG在学习】
一、引入依赖
<dependency>
<groupId>cn.smallbun.screw</groupId>
<artifactId>screw-core</artifactId>
<version>1.0.3</version>
</dependency>二、在测试类编写
package com.bojian.digital.clinic;
import cn.smallbun.screw.core.*;
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.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import javax.sql.DataSource;
import java.util.ArrayList;
@SpringBootTest
class ClinicApplicationTests {
@Test
void documentGeneration() {
//数据源
HikariConfig hikariConfig = new HikariConfig();
hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");
hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/Datebase");
hikariConfig.setUsername("root");
hikariConfig.setPassword("password");
//设置可以获取tables remarks信息
hikariConfig.addDataSourceProperty("useInformationSchema", "true");
hikariConfig.setMinimumIdle(2);
hikariConfig.setMaximumPoolSize(5);
DataSource dataSource = new HikariDataSource(hikariConfig);
//生成配置
EngineConfig engineConfig = EngineConfig.builder()
//生成文件路径
.fileOutputDir("文件路径")
//打开目录
.openOutputDir(true)
//文件类型
.fileType(EngineFileType.HTML)
//生成模板实现
.produceType(EngineTemplateType.freemarker)
//自定义文件名称
// .fileName("SQl.html")
.build();
//忽略表
ArrayList<String> ignoreTableName = new ArrayList<>();
ignoreTableName.add("test_user");
ignoreTableName.add("test_group");
//忽略表前缀
ArrayList<String> ignorePrefix = new ArrayList<>();
ignorePrefix.add("test_");
//忽略表后缀
ArrayList<String> ignoreSuffix = new ArrayList<>();
ignoreSuffix.add("_test");
ProcessConfig processConfig = ProcessConfig.builder()
//指定生成逻辑、当存在指定表、指定表前缀、指定表后缀时,将生成指定表,其余表不生成、并跳过忽略表配置
//根据名称指定表生成
.designatedTableName(new ArrayList<>())
//根据表前缀生成
.designatedTablePrefix(new ArrayList<>())
//根据表后缀生成
.designatedTableSuffix(new ArrayList<>())
//忽略表名
.ignoreTableName(ignoreTableName)
//忽略表前缀
.ignoreTablePrefix(ignorePrefix)
//忽略表后缀
.ignoreTableSuffix(ignoreSuffix).build();
//配置
Configuration config = Configuration.builder()
//版本
.version("1.0.0")
//描述
.description("数据库设计文档生成")
//数据源
.dataSource(dataSource)
//生成配置
.engineConfig(engineConfig)
//生成配置
.produceConfig(processConfig)
.build();
//执行生成
new DocumentationExecute(config).execute();
}
}
运行之后再对应地目录种查看生成的文件
边栏推荐
- SRE必将走向混沌工程时代--华为云混沌工程实践
- ssh免密码登录
- Thread pool: reading the source code of threadpoolexcutor
- 牛客网:合并区间
- 同花顺好用么?手机开户安全么?
- 5g short message solution
- C sqlsugar, hisql, FreeSQL ORM framework omni-directional performance test comparison sqlserver
- jniLibs.srcDirs = [‘libs‘]有什么用?
- Flutter系列-搭建Flutter开发环境
- Makefile将某一部分文件不编译
猜你喜欢

Problems of different renderers running on the web with flutter2.0

集群、分布式、微服务概念和区别

IPLOOK 5GC与亚信国际CHF(计费功能)对接成功

【建议收藏】消息队列常见的使用场景

Detailed explanation of session mechanism and related applications of session

JVM quick start

Flutter series -flutter route management

Linked list 4- 21 merge two ordered linked lists

数商云:数字化供应链系统搭建,赋能企业实现物流供应链的优化升级

PostgreSQL 字符串分隔函数(regexp_split_to_table)介绍以及示例应用
随机推荐
Niuke.com: judge whether it is palindrome string
Makefile将某一部分文件不编译
shell脚本详解(二)——条件测试、if语句和case分支语句
Play typical usage scenarios of kubernetes | dashboard for 5 minutes every day
Dynamically changing the style of label elements in a loop
牛客网:最小覆盖子串
Flutter系列-搭建Flutter开发环境
Implementing Domain Driven Design - using ABP framework - solution overview
下拉刷新及上拉加载更多的ListView
SRE必将走向混沌工程时代--华为云混沌工程实践
C sqlsugar, hisql, FreeSQL ORM framework omni-directional performance test comparison sqlserver
运维、监控、AIOps的几个重要观点
Getting started with database connection pooling (c3p0, Druid)
jniLibs.srcDirs = [‘libs‘]有什么用?
Typescript (7) generic
China's two meteorological "new stars" data products are shared with global users
codeup最长回文子串
输入两个字符串,输出最长相同子串
Flutter系列-flutter路由管理
回文数(简单版)