介绍
本篇文章给大家分享的是有关SpringBoot整合螺丝实现数据库文档自动生成,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
<强> 1。创建项目强>
1.1砰的一声。xml
& lt; dependency> & lt; groupId> mysql & lt; artifactId> mysql-connector-java & lt; scope> runtime & lt;/dependency> & lt; dependency> & lt; groupId> org.freemarker & lt; artifactId> freemarker & lt; version> 2.3.30 & lt;/dependency> & lt; dependency> & lt; groupId> cn.smallbun.screw & lt; artifactId> screw-core & lt; version> 1.0.5 & lt;/dependency>
1.2新建工具类DocumentConfig。java
/* * *文档生成 */静态孔隙documentGeneration () {//数据源 HikariConfig HikariConfig=new HikariConfig (); hikariConfig.setDriverClassName (“com.mysql.cj.jdbc.Driver"); hikariConfig.setJdbcUrl (“jdbc: mysql://IP地址:3306/数据库名称“); hikariConfig.setUsername(“用户名“); hikariConfig.setPassword(“密码“);//设置可以获取表备注信息 hikariConfig.addDataSourceProperty (“useInformationSchema",“true"); hikariConfig.setMinimumIdle (2); hikariConfig.setMaximumPoolSize (5); 数据源的数据源=new HikariDataSource (hikariConfig);//生成配置 EngineConfig EngineConfig=EngineConfig.builder ()//生成文件路径 .fileOutputDir (“D: \ \“)//打开目录 .openOutputDir(真正的)//文件类型 .fileType (EngineFileType.HTML)//生成模板实现 .produceType (EngineTemplateType.freemarker)//自定义文件名称 .fileName(“测试数据库“).build ();//忽略表 ArrayList,ignoreTableName=new ArrayList<的在(); ignoreTableName.add (“test_user"); ignoreTableName.add (“test_group");//忽略表前缀 ArrayList ,ignorePrefix=new ArrayList<的在(); ignorePrefix.add (“test_");//忽略表后缀 ArrayList ,ignoreSuffix=new ArrayList<的在(); ignoreSuffix.add (“_test"); ProcessConfig ProcessConfig=ProcessConfig.builder ()//指定生成逻辑,当存在指定表,指定表前缀,指定表后缀时,将生成指定表,其余表不生成,并跳过忽略表配置//根据名称指定表生成 ,.designatedTableName(新ArrayList<的在())//根据表前缀生成 ,.designatedTablePrefix(新ArrayList<的在())//根据表后缀生成 ,.designatedTableSuffix(新ArrayList<的在())//忽略表名 .ignoreTableName (ignoreTableName)//忽略表前缀 .ignoreTablePrefix (ignorePrefix)//忽略表后缀 .ignoreTableSuffix (ignoreSuffix) .build ();//配置 配置配置=Configuration.builder ()//版本 .version (“1.0.0")//描述 .description(“数据库设计文档生成“)//数据源 .dataSource(数据源)//生成配置 .engineConfig (engineConfig)//生成配置 .produceConfig (processConfig) .build ();//执行生成 新DocumentationExecute(配置). execute (); }
1.3运行该方法
1.4第二种生成配置
1.4.1先在应用程序中。yml里面配置数据库连接信息:
春: 数据源: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc: mysql://IP地址:3306/数据库名称 用户名:用户名 密码:密码 xa: 属性: useInformationSchema:真
1.4.2新建测试方法
进口cn.smallbun.screw.core.Configuration; 进口cn.smallbun.screw.core.engine.EngineConfig; 进口cn.smallbun.screw.core.engine.EngineFileType; 进口cn.smallbun.screw.core.engine.EngineTemplateType; 进口cn.smallbun.screw.core.execute.DocumentationExecute; 进口cn.smallbun.screw.core.process.ProcessConfig; 进口org.junit.jupiter.api.Test; 进口org.springframework.beans.factory.annotation.Autowired; 进口org.springframework.boot.test.context.SpringBootTest; 进口org.springframework.context.ApplicationContext; 进口javax.sql.DataSource; 进口java.util.ArrayList; 进口java.util.Arrays; 进口并不知道; @SpringBootTest 公开课ScrewApplicationTests { @ autowired ApplicationContext ApplicationContext; @Test 空白contextLoads () { 数据源dataSourceMysql=applicationContext.getBean (DataSource.class);//生成文件配置 EngineConfig EngineConfig=EngineConfig.builder ()//生成文件路径,自己mac本地的地址,这里需要自己更换下路径 .fileOutputDir (“D: \ \“)//打开目录 .openOutputDir(假)//文件类型 .fileType (EngineFileType.HTML)//生成模板实现 .produceType (EngineTemplateType.freemarker) .build ();//生成文档配置(包含以下自定义版本号,描述等配置连接) 配置配置=Configuration.builder () .version (“1.0.0") .description(“生成文档信息描述“) .dataSource (dataSourceMysql) .engineConfig (engineConfig) .produceConfig (getProcessConfig ()) .build ();//执行生成 新DocumentationExecute(配置). execute (); }/* * *配置想要生成的表+配置想要忽略的表 * @return生成表配置 */公共静态ProcessConfig getProcessConfig () {//忽略表名 ListSpringBoot整合螺丝实现数据库文档自动生成