screw一键生成数据库设计文档

Screw是一款能够帮助开发者自动生成数据库所有表详情文档的工具,支持HTML、Word和MD格式。通过在POM文件中引入依赖,配置数据源和设置生成参数,可以轻松生成数据库设计文档。文章提供了具体的使用步骤,包括导入依赖和编写Java代码示例,但注意不支持某些国产数据库。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

今天使用了一款非常简单生成数据库文档的小工具,于是记录一下,这款工具就是screw(螺丝钉)

官网地址:https://gitee.com/leshalv/screw


提示:以下是本篇文章正文内容,下面案例可供参考

一、screw 是什么?

screw 这个工具能帮我们自动生成某个数据库所有表的详情文档,可以生成html、word、md格式,生成示例如下:
在这里插入图片描述

二、使用步骤

1.pom导入依赖

    <!-- screw -->
	<dependency>
      <groupId>cn.smallbun.screw</groupId>
      <artifactId>screw-core</artifactId>
      <version>1.0.4</version>
  	</dependency>
  	<!-- HikariCP -->	
  	<dependency>
      <groupId>com.zaxxer</groupId>
      <artifactId>HikariCP</artifactId>
      <version>2.5.1</version>
  	</dependency>
  	<!-- mysql -->
  	<dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.47</version>
    </dependency>
    <!-- oracle -->
	<dependency>
	     <groupId>com.oracle.database.jdbc</groupId>
	     <artifactId>ojdbc8</artifactId>
	     <version>21.1.0.0</version>
	</dependency>

2.生成数据库设计文档代码

代码如下(示例):

package com.test;

import java.util.ArrayList;

import javax.sql.DataSource;

import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;

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;

public class Test{
	public static void main(String[] args) {
		HikariConfig hikariConfig = new HikariConfig();
//	    hikariConfig.setDriverClassName("com.mysql.jdbc.Driver");//项目中使用的DriverClassName
//	    hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/test");//项目中使用的jdbcUrl
	    hikariConfig.setDriverClassName("oracle.jdbc.driver.OracleDriver");//项目中使用的DriverClassName
	    hikariConfig.setJdbcUrl("jdbc:oracle:thin:@192.168.1.151:1521:orcl");//项目中使用的jdbcUrl
	    hikariConfig.setUsername("ucas_shenzhen");
	    hikariConfig.setPassword("ucas_shenzhen");
	    //设置可以获取tables remarks信息
	    hikariConfig.addDataSourceProperty("useInformationSchema", "true");
	    hikariConfig.setMinimumIdle(2);
	    hikariConfig.setMaximumPoolSize(5);
	    DataSource dataSource = new HikariDataSource(hikariConfig);
	    //生成配置
	    EngineConfig engineConfig = EngineConfig.builder()
	            //生成文件路径
	            .fileOutputDir("E:\\项目文档")
	            //打开目录
	            .openOutputDir(true)
	            //文件类型
	            .fileType(EngineFileType.HTML)
	            //生成模板实现
	            .produceType(EngineTemplateType.freemarker).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()
	            //忽略表名
	            .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();
	}
}


总结

最后直接运行main方法即可生成数据库设计文档。注:国产的一些数据库暂不支持生成,如:达梦等

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值