栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MySQL数据库设计文档生成

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MySQL数据库设计文档生成

MySQL数据库设计文档生成

文章目录
  • MySQL数据库设计文档生成
  • 前言
  • 0、全局浏览
  • 1、引入依赖
  • 2、启动类
  • 3、配置文件
  • 4、实现类
  • 5、成品展示


前言

记录MySQL数据库设计文档生成,旨在方便自己,也能方便他人。

Gitee源码:https://gitee.com/liuyimin430/mysql-document.git

0、全局浏览


1、引入依赖


    cn.smallbun.screw
    screw-core
    1.0.5



    mysql
    mysql-connector-java
    runtime



    com.zaxxer
    HikariCP
    3.4.5


2、启动类
@SpringBootApplication
public class MysqldocumentApplication {

    public static void main(String[] args) {
        SpringApplication.run(MysqldocumentApplication.class, args);
    }

}
3、配置文件
# 暂无配置,数据库驱动的选择直接在实现类中指定,更清晰明了
4、实现类

数据源:HikariCP 线程池, SpringBoot 2.0开始内置了HikariCP,2.0之前的版本需要引入依赖
数据库驱动:

  • MySQL5.7驱动:com.mysql.jdbc.Driver
  • MySQL5.7之后版本的驱动:com.mysql.cj.jdbc.Driver
@SpringBootTest
class MysqldocumentApplicationTests {

    @Test
    void documentGeneration() {
        //数据源
        HikariConfig hikariConfig = new HikariConfig();
        hikariConfig.setDriverClassName("com.mysql.jdbc.Driver");
        hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/数据库名?characterEncoding=UTF-8");
        hikariConfig.setUsername("root");
        hikariConfig.setPassword("密码");
        //设置可以获取tables remarks信息
        hikariConfig.addDataSourceProperty("useInformationSchema", "true");
        hikariConfig.setMinimumIdle(2);
        hikariConfig.setMaximumPoolSize(5);
        DataSource dataSource = new HikariDataSource(hikariConfig);
        
        // 1、生成文件配置
        EngineConfig engineConfig = EngineConfig.builder()
                //生成文件路径(改成自己的生成路径)
                .fileOutputDir("D:\mysqldocument")
                //生成后是否立即打开目录
                .openOutputDir(true)
                //文件类型  有HTML、WORD、MD三种枚举选择
                .fileType(EngineFileType.HTML)
                //生成模板实现
                .produceType(EngineTemplateType.freemarker)
                //自定义文件名称
                .fileName("测试生成数据库文档").build();

        //忽略表名(可选)
        ArrayList ignoreTableName = new ArrayList<>();
        //ignoreTableName.add("xxl_job_group");
        //ignoreTableName.add("xxl_job_info");
        // 忽略表前缀(可选)
		ArrayList ignorePrefix = new ArrayList<>();
		//ignorePrefix.add("xxl_");
        // 忽略表后缀(可选)
		ArrayList ignoreSuffix = new ArrayList<>();
		//ignoreSuffix.add("_user");

		// 2、配置想要忽略的表(可选)
        ProcessConfig processConfig = ProcessConfig.builder()
        		.ignoreTableName(ignoreTableName)
                .ignoreTablePrefix(ignorePrefix)
                .ignoreTableSuffix(ignoreSuffix)
                .build();
                //指定生成逻辑、当存在指定表、指定表前缀、指定表后缀时,将生成指定表,其余表不生成、并跳过忽略表配置
                //根据名称指定表生成
                //.designatedTableName(new ArrayList<>())
                //根据表前缀生成
                //.designatedTablePrefix(new ArrayList<>())
                //根据表后缀生成
                //.designatedTableSuffix(new ArrayList<>())
                //忽略表名
                //.ignoreTableName(ignoreTableName)
                //.build();
        
        // 3、生成文档配置(包含以下自定义版本号、标题、描述(数据库名 + 描述 = 文件名)等配置连接)
        Configuration config = Configuration.builder()
                //版本
                .version("1.0.0")
                //描述
                .description("数据库设计文档生成")
                //数据源
                .dataSource(dataSource)
                //生成配置
                .engineConfig(engineConfig)
                //生成配置
                .produceConfig(processConfig)
                .build();
                
        // 4、执行生成
        new DocumentationExecute(config).execute();
    }
}

5、成品展示

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1002839.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号