一、创建spring boot项目
File ——> New ——> Project,然后如下图:

点击Next,如下图:

点击Next,如下图:

点击Next,如下图:

点击Finish,就构建好了一个初始化的springboot工程,文件结构如下图:

二、pom依赖
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.30</version>
</dependency>
<dependency>
<groupId>cn.smallbun.screw</groupId>
<artifactId>screw-core</artifactId>
<version>1.0.2</version>
</dependency>添加以上内容至下图的位置,如图所示:

三、配置数据库相关
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456在application.properties文件中配置,如下图所示:

四、测试类
在ScrewdemoApplicationTests中写测试代码,目录结构图如下所示:

具体的源码如下所示:
package com.example.screwdemo;
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 org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.ApplicationContext;
import javax.sql.DataSource;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@SpringBootTest
class ScrewdemoApplicationTests {
@Autowired
ApplicationContext applicationContext;
/**
* @description: screw快速生成数据库文档
* @return: void
* @author: Fariy
* @date: 2020/9/4
*/
@Test
void contextLoads() {
DataSource dataSource = applicationContext.getBean(DataSource.class);
// 1、生成文件配置
EngineConfig engineConfig = EngineConfig.builder()
//生成文件路径(本地路径)
.fileOutputDir("/Users/Fariy/Documents/doc")
//打开目录
.openOutputDir(false)
//文件类型( ".html"、".doc"、".md")
.fileType(EngineFileType.HTML)
//生成模板实现
.produceType(EngineTemplateType.freemarker).build();
// 忽略表名
List<String> ignoreTableName = Arrays.asList("aa","test_group");
// 忽略表前缀
List<String> ignorePrefix = Collections.singletonList("czb_");
// 忽略表后缀å
List<String> ignoreSuffix = Arrays.asList("_test","_test1");
// 2、配置想要忽略的表
ProcessConfig processConfig = ProcessConfig.builder()
.ignoreTableName(ignoreTableName)
.ignoreTablePrefix(ignorePrefix)
.ignoreTableSuffix(ignoreSuffix)
.build();
// 3、生成文档配置(包含以下自定义版本号、描述等配置连接)
Configuration config = Configuration.builder()
.version("1.0.1")
.description("数据库设计文档生成")
.dataSource(dataSource)
.engineConfig(engineConfig)
.produceConfig(processConfig).build();
// 4、执行生成
new DocumentationExecute(config).execute();
}
}
五、启动
点击test启动,运行结果,然后在 fileOutputDir中设置的路径:/Users/Fariy/Documents/doc找生成好的数据库。然后打开的效果:

版权声明:本文为Amy_Cher原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。