Screw数据库文档生成神器
2024-09-08 18:37:24
引入依赖
<dependency>
<groupId>cn.smallbun.screw</groupId>
<artifactId>screw-core</artifactId>
<version>1.0.3</version>
</dependency>
请自行配置好数据源
目前screw支持的数据库
- MySQL
- MariaDB
- TIDB
- Oracle
- SqlServer
- PostgreSQL
- Cache DB
- H2 (开发中)
- DB2 (开发中)
- HSQL (开发中)
- SQLite(开发中)
- 瀚高(开发中)
- 达梦 (开发中)
- 虚谷 (开发中)
- 人大金仓(开发中)
在SpringBoot中编写测试类
package com.landimc.sbs; import javax.sql.DataSource;
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 org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.ApplicationContext; import javax.sql.DataSource;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; @SpringBootTest
class SbsApplicationTests { @Autowired
ApplicationContext applicationContext; @Test
void contextLoads() {
DataSource dataSourceMysql = applicationContext.getBean(DataSource.class); // 生成文件配置
EngineConfig engineConfig = EngineConfig.builder()
// 生成文件路径
.fileOutputDir("E:\\doc\\zqt")
// 打开目录
.openOutputDir(false)
// 文件类型(目前支持html、doc、MD格式,个人体验后还是html格式生成后看起来比较舒服,建议使用)
.fileType(EngineFileType.HTML)
// 生成模板实现
.produceType(EngineTemplateType.freemarker).build(); // 生成文档配置(包含以下自定义版本号、描述等配置连接)
Configuration config = Configuration.builder().version("1.0.0").description("文档描述").dataSource(dataSourceMysql).engineConfig(engineConfig).produceConfig(getProcessConfig()).build(); // 执行生成
new DocumentationExecute(config).execute();
} /**
* 配置想要生成的表+ 配置想要忽略的表
*
* @return 生成表配置
*/
public static ProcessConfig getProcessConfig() {
// 忽略表名,需要忽略的表将表名放到list中即可
//List<String> ignoreTableName = Arrays.asList("aa", "test_group");
// 忽略表前缀,如忽略a开头的数据库表
//List<String> ignorePrefix = Arrays.asList("a", "t");
// 忽略表后缀
//List<String> ignoreSuffix = Arrays.asList("_test", "czb_"); return ProcessConfig.builder()
// 根据名称指定表生成
.designatedTableName(new ArrayList<>())
// 根据表前缀生成
.designatedTablePrefix(new ArrayList<>())
// 根据表后缀生成
.designatedTableSuffix(new ArrayList<>()).build(); } }
最新文章
- JavaScript Module Pattern: In-Depth
- Visibility属性控制元素的显示和隐藏
- easyUI dialog 弹窗 居中显示
- 动态WebService方法
- 【Windows核心编程】重载类成员函数new / new[] / delete / delete[]
- extjs grid renderer用法【转载】
- WEB SSH之Shellinabox
- Page Controller页面控制器实现
- poj 2431
- 勉強すべきURL
- MVC的验证 jquery.validate.unobtrusive
- Maven中有三大模块
- delete、truncate与drop的区别
- 进入css3动画世界(一)
- Native Hibernate与Hibernate JPA
- C++的编译预处理
- JavaSE回顾及巩固的自学之路(四)——————方法和数组,面向对象
- js 解密 16进制转10进制,再取ascii码的对应值
- 未完全弄懂的题的题51nod1532
- Protocol Buffer 序列化原理大揭秘 - 为什么Protocol Buffer性能这么好?