天天看點

資料庫表結構文檔生成工具-SCREW快速上手(詳解)

簡介

簡潔好用的資料庫表結構文檔生成工具

特點

  • 簡潔、輕量、設計良好
  • 多資料庫支援
  • 多種格式文檔
  • 靈活擴充
  • 支援自定義模闆

資料庫支援

MySQL

MariaDB

TIDB

Oracle

SqlServer

PostgreSQL

Cache DB(2016)

文檔生成支援

html

word

markdown

文檔截圖

  • html
資料庫表結構文檔生成工具-SCREW快速上手(詳解)
資料庫表結構文檔生成工具-SCREW快速上手(詳解)
  • word
資料庫表結構文檔生成工具-SCREW快速上手(詳解)
  • markdwon
資料庫表結構文檔生成工具-SCREW快速上手(詳解)
資料庫表結構文檔生成工具-SCREW快速上手(詳解)

使用方式

  • 引入依賴
<dependency>
    <groupId>cn.smallbun.screw</groupId>
    <artifactId>screw-core</artifactId>
    <version>${lastVersion}</version>
 </dependency>
           
  • 編寫代碼
/**
 * 文檔生成
 */
void documentGeneration() {
   //資料源
   HikariConfig hikariConfig = new HikariConfig();
   hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");
   hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/database");
   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(fileOutputDir)
         //打開目錄
         .openOutputDir(true)
         //檔案類型
         .fileType(EngineFileType.HTML)
         //生成模闆實作
         .produceType(EngineTemplateType.freemarker)
         //自定義檔案名稱
         .fileName("自定義檔案名稱").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();
}
           

根據自己情況修改documentGeneration()方法:

  1. 設定資料源
HikariConfig hikariConfig = new HikariConfig();hikariConfig.setDriverClassName("com.mysql.jdbc.Driver");hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/db_gjsp");hikariConfig.setUsername("root");hikariConfig.setPassword("root");
           
  1. 自定義配置資訊
EngineConfig engineConfig = EngineConfig.builder()                //生成檔案路徑                .fileOutputDir("E:\\")                //打開目錄                .openOutputDir(true)                //檔案類型                .fileType(EngineFileType.MD)                //生成模闆實作                .produceType(EngineTemplateType.freemarker)                //自定義檔案名稱                .fileName("db_gjsp資料庫文檔").build();
           
  1. 啟動項目,生成檔案!