游乐游手机版
首页/系统平台/文章详情

SpringBoot使用Screw自动生成数据库表结构文档教程

时间:2026-08-21 15:48
在企业级开发过程中,编写数据库表结构文档是一项常见的工作。我从业多年,也待过几家企业,发现数据库表结构文档的状态普遍不太理想:要么根本没有,要么有也是手写的。在后期运维开发时,还需要手动将变更维护到文档中,这是一件非常繁琐的事情。如果忘记了一次维护,就会给以后的工作带来很多麻烦,给自己和后来的同事都

在企业级开发过程中,编写数据库表结构文档是一项常见的工作。我从业多年,也待过几家企业,发现数据库表结构文档的状态普遍不太理想:要么根本没有,要么有也是手写的。在后期运维开发时,还需要手动将变更维护到文档中,这是一件非常繁琐的事情。如果忘记了一次维护,就会给以后的工作带来很多麻烦,给自己和后来的同事都挖了不少坑。所以,我们非常需要一个插件工具来帮助我们维护数据库表结构文档,这个工具就是screw。

screw工具地址:https://gitee.com/leshalv/screw?utm_source=alading&utm_campaign=repo

特点:

  • 简洁、轻量、设计良好

  • 多数据库支持

  • 多种格式文档

  • 灵活扩展

  • 支持自定义模板

数据库支持:

  • MySQL
  • MariaDB
  • TIDB
  • Oracle
  • SqlServer
  • PostgreSQL
  • Cache DB(2016)

使用方式:

1、配置pom文件,添加依赖包。

引入screw核心包,HikariCP数据库连接池,HikariCP号称性能最出色的数据库连接池。



cn.smallbun.screw
screw-core
1.0.3




com.zaxxer
HikariCP
3.4.5




mysql
mysql-connector-ja va
8.0.20

2、配置数据源

####  数据库配置  ####
spring.datasource.url = jdbc:mysql://localhost:3306/PiaoDB?useUnicode=swater&characterEncoding=UTF-8
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.driver-class-name = com.mysql.jdbc.Driver

3、screw 核心配置

screw有两种执行方式,第一种是pom文件配置,另一种是代码执行。

3.1、代码使用:

@SpringBootTest
public class ScrewApplicationTests {

@Autowired
ApplicationContext applicationContext;

@Test
void contextLoads() {
DataSource dataSourceMysql = applicationContext.getBean(DataSource.class);
// 生成文件配置
EngineConfig engineConfig = EngineConfig.builder()
// 生成文件路径,自己mac本地的地址,这里需要自己更换下路径
.fileOutputDir("D:/")
// 打开目录
.openOutputDir(false)
// 文件类型
.fileType(EngineFileType.HTML)
// 生成模板实现
.produceType(EngineTemplateType.freemarker).build();
// 生成文档配置(包含以下自定义版本号、描述等配置连接)
Configuration config = Configuration.builder()
.version("1.0.3")
.description("生成文档信息描述")
.dataSource(dataSourceMysql)
.engineConfig(engineConfig)
.produceConfig(getProcessConfig())
.build();
// 执行生成
new DocumentationExecute(config).execute();
}

/**
* 配置想要生成的表+ 配置想要忽略的表
*
* @return 生成表配置
*/
public static ProcessConfig getProcessConfig() {
// 忽略表名
List ignoreTableName = Arrays.asList("a", "test_group");
// 忽略表前缀,如忽略a开头的数据库表
List ignorePrefix = Arrays.asList("a", "t");
// 忽略表后缀
List ignoreSuffix = Arrays.asList("_test", "czb_");
return ProcessConfig.builder()
//根据名称指定表生成
.designatedTableName(Arrays.asList("fire_user"))
//根据表前缀生成
.designatedTablePrefix(new ArrayList<>())
//根据表后缀生成
.designatedTableSuffix(new ArrayList<>())
//忽略表名
.ignoreTableName(ignoreTableName)
//忽略表前缀
.ignoreTablePrefix(ignorePrefix)
//忽略表后缀
.ignoreTableSuffix(ignoreSuffix).build();
}
}

3.2、ma ven插件使用:

 


org.springframework.boot
spring-boot-ma ven-plugin


cn.smallbun.screw
screw-ma ven-plugin
1.0.3



com.zaxxer
HikariCP
3.4.5



mysql
mysql-connector-ja va
8.0.20




root

root

com.mysql.cj.jdbc.Driver

jdbc:mysql://localhost:3306/PiaoDB?useUnicode=swater&characterEncoding=UTF-8

HTML

false

freemarker



数据库文档生成

${project.version}

fire数据库文档



compile

run





配置完以后在,我们只要点击screw:run就运行了。如下图:

文档生成支持:

  • html
  • word
  • markdown

代码中的修改:

.fileType(EngineFileType.HTML)

pom文件配置:

MD

文档截图:

1、word文档样式

2、html文档样式

3、markdown文档样式:

来源:https://apiv1.oschina.net/oschinapi/blog/detail?id=4759404
上一篇AndroidX迁移指南:现在开始升级最合适 下一篇高德Serverless规模化落地的核心价值与最佳实践
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
VMware安装Ubuntu完整教程:创建虚拟机与启动验证
系统平台 · 2026-09-01

VMware安装Ubuntu完整教程:创建虚拟机与启动验证

本教程详细演示如何在VMware中创建Ubuntu虚拟机,涵盖ISO挂载、硬件配置、安装向导及启动验证。通过清晰的步骤与验证命令,帮助新手快速搭建可用的Linux学习环境。

Win10专业版U盘安装教程:制作启动盘与完整安装步骤
系统平台 · 2026-09-01

Win10专业版U盘安装教程:制作启动盘与完整安装步骤

本文提供Win10专业版U盘安装完整流程:准备8GB以上U盘与官方镜像,制作启动盘并核对盘符;通过F12 F11 Esc等快捷键或BIOS设置U盘为第一启动项;安装时选择专业版并谨慎分区;完成后在“设置—系统—关于”验证版本与激活状态。操作前务必备份数据。

Windows10系统字体太小怎么调大
系统平台 · 2026-08-27

Windows10系统字体太小怎么调大

Windows10系统字体太小怎么调大?只需两步:首先打开设置中的显示选项,将缩放比例调整为125%或150%;随后运行ClearType文本调谐器优化字体清晰度。此方法适用于高分屏及普通屏幕,无需修改注册表即可解决界面拥挤问题。

Win10磁盘占用100%基础排查:从监控到清理的完整步骤
系统平台 · 2026-08-27

Win10磁盘占用100%基础排查:从监控到清理的完整步骤

Windows 10系统出现磁盘占用100%会导致电脑卡顿、程序响应缓慢。本文提供基础排查方案:首先通过任务管理器确认是否为磁盘高负载,随后进入系统存储页面分析C盘占用类别,最后针对性清理临时文件。遵循此流程可有效缓解磁盘压力,避免盲目重装系统。

Windows10系统怎么显示此电脑和控制面板
系统平台 · 2026-08-27

Windows10系统怎么显示此电脑和控制面板

Windows10默认可能不显示桌面图标,导致找不到“此电脑”和“控制面板”。只需进入个性化设置,在“桌面图标设置”中勾选对应选项即可恢复。本文提供详细图文步骤,帮助快速找回系统入口。