Java:mybatis-plus-generator-ui 基于Mybatis-Plus的代码自助生成器

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Java:mybatis-plus-generator-ui 基于Mybatis-Plus的代码自助生成器

引用官方文档上的简介:


提供交互式的Web UI用于生成兼容mybatis-plus框架的相关功能代码,包括Entity,Mapper,Mapper.xml,Service,Controller等 ,可以自定义模板以及各类输出参数,也可通过SQL查询语句直接生成代码。


文档


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

gitee: https://gitee.com/davidfantasy/mybatis-plus-generator-ui

1、将mybatis-plus-generator-ui 引入项目

项目结构


$ tree -I target

.

├── pom.xml

└── src

   ├── main

   │   ├── java

   │   └── resources

   └── test

       └── java

           └── com

               └── example

                   └── GeneratorMain.java


pom.xml


<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0"

        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

   <modelVersion>4.0.0</modelVersion>


   <groupId>com.example</groupId>

   <artifactId>generator-demo</artifactId>

   <version>1.0-SNAPSHOT</version>


   <dependencies>

       <dependency>

           <groupId>com.github.davidfantasy</groupId>

           <artifactId>mybatis-plus-generator-ui</artifactId>

           <version>1.4.5</version>

           <scope>test</scope>

       </dependency>


       <dependency>

           <groupId>mysql</groupId>

           <artifactId>mysql-connector-java</artifactId>

           <version>8.0.31</version>

       </dependency>

   </dependencies>


</project>


GeneratorMain.java


package com.example;


import com.github.davidfantasy.mybatisplus.generatorui.GeneratorConfig;

import com.github.davidfantasy.mybatisplus.generatorui.MybatisPlusToolsApplication;

import com.github.davidfantasy.mybatisplus.generatorui.mbp.NameConverter;


/**

* 启动类

*/

public class GeneratorMain {


   public static void main(String[] args) {

       GeneratorConfig config = GeneratorConfig.builder()

               .driverClassName("com.mysql.cj.jdbc.Driver")

               .jdbcUrl("jdbc:mysql://127.0.0.1:3306/data")

               .userName("root")

               .password("123456")

               .basePackage("com.example")

               .nameConverter(new NameConverter() {

                   /**

                    * 自定义Service类文件的名称规则

                    */

                   @Override

                   public String serviceNameConvert(String tableName) {

                       return this.entityNameConvert(tableName) + "Service";

                   }

               })

               .port(8068)

               .build();


       MybatisPlusToolsApplication.run(config);

   }

}


启动UI,打开浏览器地址:http://localhost:8068


2、通过UI界面操作代码生成

用户表tb_user的建表语句


CREATE TABLE `tb_user` (

 `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',

 `name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户名',

 `age` tinyint unsigned NOT NULL DEFAULT '0' COMMENT '年龄',

 PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='用户表';


1、选择要生成的数据表


b6fcaaed3f8b217ee1a68e57c81c109c_076d9de6e09148ce8b2f90184d44143e.png

2、选择需要生成的文件和控制器方法

13de08a428e4eedf883ff6db3ea17a8c_41007eab6ab94cb697eed5786ac80207.png



生成的代码文件


$ tree -I target

.

├── pom.xml

└── src

   ├── main

   │   ├── java

   │   │   └── com

   │   │       └── example

   │   │           ├── controller

   │   │           │   └── UserController.java

   │   │           ├── entity

   │   │           │   └── User.java

   │   │           ├── mapper

   │   │           │   └── UserMapper.java

   │   │           └── service

   │   │               ├── UserService.java

   │   │               └── impl

   │   │                   └── UserServiceImpl.java

   │   └── resources

   │       └── mapper

   │           └── UserMapper.xml

   └── test

       └── java

           └── com

               └── example

                   └── GeneratorMain.java


以下是生成的实体类


package com.example.entity;

import com.baomidou.mybatisplus.annotation.TableName;

import com.baomidou.mybatisplus.annotation.IdType;

import com.baomidou.mybatisplus.annotation.TableId;

import java.io.Serializable;

/**

* <p>

* 用户表

* </p>

*

* @author mouday

* @since 2023-05-25

*/

@TableName("tb_user")

public class User implements Serializable {


   private static final long serialVersionUID = 1L;


   /**

    * 主键id

    */

   @TableId(value = "id", type = IdType.AUTO)

   private Integer id;


   /**

    * 用户名

    */

   private String name;


   /**

    * 年龄

    */

   private Integer age;


   public Integer getId() {

       return id;

   }


   public void setId(Integer id) {

       this.id = id;

   }


   public String getName() {

       return name;

   }


   public void setName(String name) {

       this.name = name;

   }


   public Integer getAge() {

       return age;

   }


   public void setAge(Integer age) {

       this.age = age;

   }


   @Override

   public String toString() {

       return "User{" +

       ", id=" + id +

       ", name=" + name +

       ", age=" + age +

       "}";

   }

}


参考

MyBatis-Plus 可视化代码生成器来啦,让你的开发效率大大提速!!

————————————————

版权声明:本文为CSDN博主「彭世瑜」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/mouday/article/details/130861509

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
8天前
|
Java 开发工具
【Azure Storage Account】Java Code访问Storage Account File Share的上传和下载代码示例
本文介绍如何使用Java通过azure-storage-file-share SDK实现Azure文件共享的上传下载。包含依赖引入、客户端创建及完整示例代码,助你快速集成Azure File Share功能。
193 4
|
18天前
|
Java 数据处理 API
为什么你的Java代码应该多用Stream?从循环到声明式的思维转变
为什么你的Java代码应该多用Stream?从循环到声明式的思维转变
191 115
|
18天前
|
安全 Java 编译器
为什么你的Java代码需要泛型?类型安全的艺术
为什么你的Java代码需要泛型?类型安全的艺术
144 98
|
19天前
|
Java 编译器 API
java最新版和java8的区别,用代码展示
java最新版和java8的区别,用代码展示
163 43
|
24天前
|
安全 Java 容器
告别空指针噩梦:Optional让Java代码更优雅
告别空指针噩梦:Optional让Java代码更优雅
271 94
|
24天前
|
安全 Java 容器
告别繁琐判空:Optional让你的Java代码更优雅
告别繁琐判空:Optional让你的Java代码更优雅
|
1月前
|
IDE Java 关系型数据库
Java 初学者学习路线(含代码示例)
本教程为Java初学者设计,涵盖基础语法、面向对象、集合、异常处理、文件操作、多线程、JDBC、Servlet及MyBatis等内容,每阶段配核心代码示例,强调动手实践,助你循序渐进掌握Java编程。
231 3
|
1月前
|
安全 Java 应用服务中间件
Spring Boot + Java 21:内存减少 60%,启动速度提高 30% — 零代码
通过调整三个JVM和Spring Boot配置开关,无需重写代码即可显著优化Java应用性能:内存减少60%,启动速度提升30%。适用于所有在JVM上运行API的生产团队,低成本实现高效能。
187 3
|
1月前
|
Java
java入门代码示例
本文介绍Java入门基础,包含Hello World、变量类型、条件判断、循环及方法定义等核心语法示例,帮助初学者快速掌握Java编程基本结构与逻辑。
272 0

热门文章

最新文章

下一篇
开通oss服务