• mybatis-plus-generator-ui 可视化代码生成器!


    它提供交互式的Web UI用于生成兼容mybatis-plus框架的相关功能代码,包括Entity,Mapper,Mapper.xml,Service,Controller等。

    可以自定义模板以及各类输出参数,也可通过SQL查询语句直接生成代码。

    git地址https://github.com/davidfantasy/mybatis-plus-generator-ui

    一、使用示例

    1、引入依赖

      <dependency>
           <groupId>com.github.davidfantasygroupId>
           <artifactId>mybatis-plus-generator-uiartifactId>
           <version>2.0.1version>
      dependency>
    
       
      <dependency>
           <groupId>mysqlgroupId>
           <artifactId>mysql-connector-javaartifactId>
           <version>${mysql8.version}version>
      dependency>
    
       <dependency>
            <groupId>com.baomidougroupId>
            <artifactId>mybatis-plus-boot-starterartifactId>
            <version>3.5.1version>
       dependency>
    

    2、新建程序入口,以main函数的方式运行

    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);
        }
    }
    

    3、运行main方法

    访问

    localhost:8068
    

    它可以把数据库所有的表都查询出来,我们可以现选择指定的表进行生成代码。

    同是可以选择生成哪些文件,对Controller层,也可以选择生成哪些接口。

    4、最终效果

    我们可以看到,生成的文件及目录

    再来看下Controller自动生成的接口

    注意: 因为不同的项目的接口的返回格式是不一样的,这里我们可以修改Controller模版,来生成当前我们项目所有返回接口格式。


    二、常见问题

    1、下载源码中怎么直接运行?

    不建议直接下载源码运行 ,该项目是设计为直接嵌入到对应的业务项目中使用,可以自动识别项目路径等环境变量。

    2、支持哪些类型的数据库?

    支持几乎所有主流的数据库,具体可参考mybatis-plus-generator框架的文档。需要自行引入数据库的driver包,并在 GeneratorConfig中指定driverClassName。

    3、保存的配置是存储到什么地方的?

    所有的用户保存的配置是按照basePackage分组保存到user.home目录的.mybatis-plus-generator-ui中的,不同项目的配置不会互相影响。

    4、启动报错问题排查

    大部分的启动问题都是由于依赖冲突导致的,因为mybatis-plus-generator-ui也依赖于springboot和mybatis-plus,请先检查依赖包版本是否相差过大;

    1.X的版本仅支持最高mp的3.4.X版本,在高版本的springboot(大于2.4)上启动也会有问题,2.0.0版本已经解决了相关的兼容性问题;



    声明: 公众号如需转载该篇文章,发表文章的头部一定要 告知是转至公众号: 后端元宇宙。同时也可以问本人要markdown原稿和原图片。其它情况一律禁止转载!

  • 相关阅读:
    LeetCode 双周赛 99,纯纯送分场!
    抚琴成一快-しゃぼん玉
    基于DCT+huffman变换的图像压缩解压缩FPGA实现
    vs2022 快捷键设置
    mysql基于Java web的电动车销售平台毕业设计源码201524
    热门的容器技术:Docker 和 Kubernetes 介绍
    数据库——JDBC基本连接步骤
    实战一个 Jenkins 构建 CI/CD流水线 的简单配置过程哈
    dubbo是如何实现可扩展的?
    输入和输出处理
  • 原文地址:https://www.cnblogs.com/qdhxhz/p/17375247.html