oracle数据库文档生成Screw

本文介绍了在从Oracle数据库导出表结构时,如何利用Screw-数据库表结构文档生成器配置POM.xml,编写测试工具类,并生成Word和HTML文档。该工具以其整洁的样式、快速生成和良好的集成性,成为高效数据库文档生成的利器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习使用背景:

作为一个开发人员,很多时候我们的数据库设计需要提供给甲方,因此掌握一门能够导出的技术显得很有必要。之前,系统的数据库用的都是mysql,同事之间可以推荐使用dbchm这个工具,很实用也很便捷。坑爹的是,这次系统使用的是oracle数据库,上述的有点不兼容,不太能使用。

第二天甲方就要要文档,总不能一个一个去弄吧。

Screw-数据库表结构文档生成器:

1配置pom.xml

<!-- screw核心 -->
<dependency>
     <groupId>cn.smallbun.screw</groupId>
     <artifactId>screw-core</artifactId>
     <version>1.0.3</version>
</dependency>
<!-- oracle驱动-->
<dependency>
     <groupId>com.oracle.database.jdbc</groupId>
     <artifactId>ojdbc8</artifactId>
     <version>21.1.0.0</version>
</dependency>
<!-- mysql驱动-->
<dependency>
     <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
     <scope>runtime</scope>
</dependency>

2编写测试工具类

package com.example.demo;

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 com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;

import javax.sql.DataSource;
import java.util.Arrays;
import java.util.List;

/**
 * @Author smallhou
 * @Date 2022-06-02 09:20
 * @Version V1.0
 */
public class Test {
    public static void main(String[] args) {
        // 数据源
        HikariConfig hikariConfig = new HikariConfig();
        //mysql
        //hikariConfig.setDriverClassName("com.mysql.jdbc.Driver");
        //hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/dbaname");

        //oracle
        hikariConfig.setDriverClassName("oracle.jdbc.driver.OracleDriver");
        hikariConfig.setJdbcUrl("jdbc:oracle:thin:@//127.0.0.1:1521/dbaname");

        hikariConfig.setUsername("root);
        hikariConfig.setPassword("123456");
        // 设置可以获取tables remarks信息
        hikariConfig.addDataSourceProperty("useInformationSchema", "true");
        hikariConfig.setMinimumIdle(2);
        hikariConfig.setMaximumPoolSize(5);
        DataSource dataSource = new HikariDataSource(hikariConfig);
        // 1、生成文件配置
        EngineConfig engineConfig = EngineConfig.builder()
                // 生成文件路径
                .fileOutputDir("/Users/jianchenghou/uploadjar")//windows需要写盘符,我的是mac就省略了
                //.fileOutputDir("C:\\Users\\jianchenghou\\")//windows

                // 打开目录
                .openOutputDir(false)
                // 文件类型
                .fileType(EngineFileType.WORD)
                // 生成模板实现
                .produceType(EngineTemplateType.freemarker).build();

        // 忽略表名
        List<String> ignoreTableName = Arrays.asList("test");
        // 忽略表前缀
        List<String> ignorePrefix = Arrays.asList("test_", "test");
        // 忽略表后缀
        List<String> ignoreSuffix = Arrays.asList("_test", "test");

        // 2、配置想要忽略的表
        //ProcessConfig processConfig = ProcessConfig.builder().ignoreTableName(ignoreTableName).ignoreTablePrefix(ignorePrefix).ignoreTableSuffix(ignoreSuffix).build();
        //我这里就不配置了
        ProcessConfig processConfig = ProcessConfig.builder().build();

        // 3、生成文档配置(包含以下自定义版本号、描述等配置连接)
        Configuration config = Configuration.builder().version("1.0.0").description("数据库文档").dataSource(dataSource)
                .engineConfig(engineConfig).produceConfig(processConfig).build();

        // 4、执行生成
        new DocumentationExecute(config).execute();
    }

}

3直接启动测试类的main方法;会在你写的文件路径下生成相应的文档(自己设置格式,我这里简单的导出了word/html)

4导出文件

word:

 html:

 5总体感觉:样式非常整齐,速度生成的也很快,集成速度更快。非常适合我们生成数据库文档。毕竟能自己调试的项目,可控。。。。。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值