它提供交互式的Web UI用于生成兼容mybatis-plus框架的相关功能代码,包括Entity,Mapper,Mapper.xml,Service,Controller等。
可以自定义模板以及各类输出参数,也可通过SQL查询语句直接生成代码。
git地址
:https://github.com/davidfantasy/mybatis-plus-generator-ui
<dependency> <groupId>com.github.davidfantasy</groupId> <artifactId>mybatis-plus-generator-ui</artifactId> <version>2.0.1</version> </dependency> <!-- mysql --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql8.version}</version> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.1</version> </dependency>
public class GeberatorUIServer { public static void main(String[] args) { GeneratorConfig config = GeneratorConfig.builder().jdbcUrl("jdbc:mysql://118.31.224.65:3306/kp?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Hongkong") .userName("root") .password("root") .driverClassName("com.mysql.cj.jdbc.Driver") //数据库schema,MSSQL,PGSQL,ORACLE,DB2类型的数据库需要指定 //.schemaName("myBusiness") //如果需要修改entity及其属性的命名规则,以及自定义各类生成文件的命名规则,可自定义一个NameConverter实例,覆盖相应的名称转换方法,详细可查看该接口的说明: .nameConverter(new NameConverter() { /** * 自定义Service类文件的名称规则 */ @Override public String serviceNameConvert(String tableName) { return this.entityNameConvert(tableName) + "Service"; } /** * 自定义Controller类文件的名称规则 */ @Override public String controllerNameConvert(String tableName) { return this.entityNameConvert(tableName) + "Controller"; } }) //所有生成的java文件的父包名,后续也可单独在界面上设置 .basePackage("com.jincou.mybatisplus") .port(8068) .build(); MybatisPlusToolsApplication.run(config); } }
访问
localhost:8068
它可以把数据库所有的表都查询出来,我们可以现选择指定的表进行生成代码。
同是可以选择生成哪些文件,对Controller层,也可以选择生成哪些接口。
我们可以看到,生成的文件及目录
再来看下Controller自动生成的接口
注意
: 因为不同的项目的接口的返回格式是不一样的,这里我们可以修改Controller模版,来生成当前我们项目所有返回接口格式。
不建议直接下载源码运行 ,该项目是设计为直接嵌入到对应的业务项目中使用,可以自动识别项目路径等环境变量。
支持几乎所有主流的数据库,具体可参考mybatis-plus-generator框架的文档。需要自行引入数据库的driver包,并在 GeneratorConfig中指定driverClassName。
所有的用户保存的配置是按照basePackage分组保存到user.home目录的.mybatis-plus-generator-ui中的,不同项目的配置不会互相影响。
大部分的启动问题都是由于依赖冲突导致的,因为mybatis-plus-generator-ui也依赖于springboot和mybatis-plus,请先检查依赖包版本是否相差过大;
1.X的版本仅支持最高mp的3.4.X版本,在高版本的springboot(大于2.4)上启动也会有问题,2.0.0版本已经解决了相关的兼容性问题;
声明: 公众号如需转载该篇文章,发表文章的头部一定要 告知是转至公众号: 后端元宇宙。同时也可以问本人要markdown原稿和原图片。其它情况一律禁止转载!