专业的JAVA编程教程与资源

网站首页 > java教程 正文

springboot-如何集成screw生成数据库文档

temp10 2024-11-05 11:51:44 java教程 13 ℃ 0 评论

一、基本介绍

Screw 是一个开源的 Java 工具,用于生成数据库文档。它可以自动扫描指定的数据库中的表和列信息,并将其转换为 HTML、Word 或 Markdown 等格式的文档。Screw 支持主流的关系型数据库,如 MySQL、Oracle、SqlServer 等,具体详情可参考 https://gitee.com/leshalv/screw 网址。

二、步骤概览

三、步骤说明

1.引入依赖包

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
  <groupId>cn.smallbun.screw</groupId>
  <artifactId>screw-core</artifactId>
  <version>1.0.5</version>
</dependency>
<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <scope>runtime</scope>
</dependency>

2.配置连接信息

在 application.yml 中配置需要生成设计文档的数据库连接信息。

springboot-如何集成screw生成数据库文档

spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/springboot-integeration-screw?useSSL=false&autoReconnect=true&tinyInt1isBit=false&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
    username: root
    password: shawn

3.创建配置类

在 Spring Boot 项目的配置类中创建 Screw 的配置。可以通过创建一个 ScrewConfig 类来完成。

  • ScrewConfig:screw 生成文档配置,代码概览如下如下图所示:
  • ScrewConfig#documentGeneration:文档生成配置
@Bean
public void documentGeneration() {
  Configuration config = Configuration.builder()
  //版本
    .version("1.0.0")
  //描述
    .description("数据库设计文档")
  //数据源
    .dataSource(dataSource)
  //引擎配置
    .engineConfig(engineConfig())
  //生成配置
    .produceConfig(processConfig())
    .build();
  //执行生成
  new DocumentationExecute(config).execute();
}
  • ScrewConfig#engineConfig:文档生成用到的引擎配置。
private EngineConfig engineConfig() {
  return EngineConfig.builder()
  //生成文件路径
    .fileOutputDir("D:/tmp")
  //打开目录
    .openOutputDir(true)
  //文件类型
    .fileType(EngineFileType.HTML)
  //生成模板实现
    .produceType(EngineTemplateType.freemarker)
  //自定义文件名称
    .fileName("学生管理系统数据库设计文档").build();
}
  • ScrewConfig#processConfig:文档生成用到的处理逻辑。
private ProcessConfig processConfig() {
  //忽略表
  List<String> ignoreTables = new ArrayList<>();
  ignoreTables.add("test_user");
  ignoreTables.add("test_group");
  //忽略表前缀
  List<String> ignorePrefix = new ArrayList<>();
  ignorePrefix.add("test_");
  //忽略表后缀
  List<String> ignoreSuffix = new ArrayList<>();
  ignoreSuffix.add("_test");
  //指定生成逻辑、当存在指定表、指定表前缀、指定表后缀时,将生成指定表,其余表不生成、并跳过忽略表配置
  ProcessConfig config = ProcessConfig.builder()
  //根据名称指定表生成
    .designatedTableName(new ArrayList<>())
  //根据表前缀生成
    .designatedTablePrefix(new ArrayList<>())
  //根据表后缀生成
    .designatedTableSuffix(new ArrayList<>())
  //忽略表名
    .ignoreTableName(ignoreTables)
  //忽略表前缀
    .ignoreTablePrefix(ignorePrefix)
  //忽略表后缀
    .ignoreTableSuffix(ignoreSuffix).build();
  return config;
}

4.启动运行

启动项目,后台没有异常的情况下,数据库文档会在我们指定的目录下生成。


5.查看文档

查看生成的数据库文档内容,文档详情如图所示:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表