1.配置
引入screw核心...
<!-- screw核心 --> <dependency><groupId>cn.smallbun.screw</groupId><artifactId>screw-core</artifactId><version>1.0.3</version> </dependency><!-- HikariCP --> <dependency><groupId>com.zaxxer</groupId><artifactId>HikariCP</artifactId><version>3.4.5</version> </dependency><!--mysql driver--> <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.20</version> </dependency>
2.编写工具类
public class screwStart{public static void main(String[] args) {// 数据源HikariConfig hikariConfig = new HikariConfig();hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");hikariConfig.setJdbcUrl("数据库-地址");hikariConfig.setUsername("数据库-用户名");hikariConfig.setPassword("数据库-密码");// 设置可以获取tables remarks信息hikariConfig.addDataSourceProperty("useInformationSchema", "true");hikariConfig.setMinimumIdle(2);hikariConfig.setMaximumPoolSize(5);DataSource dataSource = new HikariDataSource(hikariConfig);// 生成配置EngineConfig engineConfig = EngineConfig.builder()// 生成文件路径.fileOutputDir("生成文档保存本地路径")// 打开目录 设置为true执行完代码后会自动打开对应路径文件夹.openOutputDir(true)// 文件类型,目前有doc跟html两种类型.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();} }
3.设置好工具类后启动则可一键生成
在自己设置的保存位置打开即可: