项目地址
如何使用(仅介绍插件使用方式)
- 创建Maven项目,在pom文件中添加如下插件。
只需要修改数据库相关的信息即可。
<build>
<plugins>
<plugin>
<!-- https://mvnrepository.com/artifact/cn.smallbun.screw/screw-maven-plugin -->
<groupId>cn.smallbun.screw</groupId>
<artifactId>screw-maven-plugin</artifactId>
<version>1.0.5</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/com.zaxxer/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.22</version>
</dependency>
</dependencies>
<configuration>
<!--username-->
<username>username</username>
<!--password-->
<password>password</password>
<!--driver-->
<driverClassName>com.mysql.cj.jdbc.Driver</driverClassName>
<!--jdbc url-->
<jdbcUrl>jdbc:mysql://localhost:3306/screw?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8</jdbcUrl>
<!--生成文件类型:HTML WORD MD-->
<fileType>MD</fileType>
<!--打开文件输出目录-->
<openOutputDir>false</openOutputDir>
<!--生成模板-->
<produceType>freemarker</produceType>
<!--文档名称 为空时:将采用[数据库名称-描述-版本号]作为文档名称-->
<fileName></fileName>
<!--描述-->
<description>数据库文档</description>
<!--版本-->
<version>${project.version}</version>
<!--标题-->
<title>数据库文档</title>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
- 运行插件
- 通过IDEA运行
- 通过mavn命令运行,需要配置maven环境变量。
mvn screw:run
运行效果
会在项目根目录创建doc目录。
原理分析
思考两个问题?
1.这些数据是如何获取的呢?
2.数据是如何封装的呢?
Mysql数据库举例:我们可以通过查看数据库information_schema
。这个数据库是Mysql自带的数据库。
从上面这些表中可以查到数据库的表信息,以及每个表的字段信息。
获取到这些信息之后,剩下的事情就是确定要生成的模板,然后遍历生成对应的格式就行了。
这些东西呢都可以自己写,可以生成excel格式的文档,或者其他格式。