当前位置: 首页 > 科技观察

还在手动整理数据库文件?试试这个工具

时间:2023-03-21 16:08:53 科技观察

简介在企业级开发中,我们经常会花时间编写数据库表结构文档。由于我们在几家公司工作过,数据库表结构文档的状态:要么没有,要么有,但是都是手写的后期运维开发,需要在文档里面手动维护,非常繁琐。如果忘记保养一次,会给以后的工作带来很多麻烦,给自己和后代造成很多的隐患,所以需要一个外挂工具螺丝[1]来保养。螺丝特点简单、轻巧、精心设计。不需要powerdesigner多数据库支持的重量级建模工具。支持MySQL、Oracle、SqlServer等市场上常见的数据库类型和各种格式的文档。支持灵活扩展MD、HTML、WORD格式。支持自定义模板和显示样式支持数据库类型[??]MySQL[??]MariaDB[??]TIDB[??]Oracle[??]SqlServer[??]PostgreSQL[??]CacheDB这里以mysql8数据库为例cn.smallbun.screwscrew-core1.0.2com.zaxxerHikariCP3.4.5mysqlmysql-connector-java8.0.201.生成@TestpublicvoidshouldAnswerWithTrue(){//datasourceHikariConfighikariConfig=newHikariConfig();hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/test");hikariConfig.setUsername("root");hikariConfig.setPassword("root");//Set可以获取tablesremarks信息hikariConfig.addDataSourceProperty("useInformationSchema","true");hikariConfig.setMinimumIdle(2);hikariConfig.setMaximumPoolSize(5);DataSourcedataSource=newHikariDataSource(hikariConfig);//生成配置EngineConfigengineConfig=EngineConfig(bug)//生成文件路径.fileOutputDir("/Users/lengleng")//打开目录.openOutputDir(true)//文件类型.fileType(EngineFileType.HTML)//生成模板实现.produceType(EngineTemplateType.freemarker).build();//忽略表ArrayListignoreTableName=newArrayList<>();ignoreTableName.add("test_user");ignoreTableName.add("test_group");//忽略表前缀ArrayListignorePrefix=newArrayList<>();ignorePrefix.add("test_");//忽略表后缀ArrayListignoreSuffix=newArrayList<>();ignoreSuffix.add("_test");ProcessConfigprocessConfig=ProcessConfig.builder()//忽略表名.ignoreTableName(ignoreTableName)//忽略表前缀.ignoreTablePrefix(ignorePrefix)//忽略表后缀.ignoreTableSuffix(ignoreSuffix).build();//ConfigurationConfigurationconfig=Configuration.builder()//version.version("1.0.0")//description.description("数据库设计文档生成")//datasource.dataSource(dataSource)//生成配置。engineConfig(engineConfig)//生成配置.produceConfig(processConfig).build();//执行并生成newDocumentationExecute(config).execute();}2.生成插件形式的文档cn.smallbun.screwscrew-maven-plugin1.0.2com.zaxxerHikariCP3.4.5mysql<艺术iffactId>mysql-connector-java8.0.20rootrootcom.mysql.cj.jdbc.Driverjdbc:mysql://127.0.0.1:3306/testHTML/Users/lenglengfalsefreemarker数据库文件生成${project.version}数据库文件<执行><执行><阶段>编译run