首页 > 其他分享 >一个解放双手、提高工作效率的代码生成器!

一个解放双手、提高工作效率的代码生成器!

时间:2023-11-22 11:23:51浏览次数:31  
标签:代码生成 String 代码 entityName 生成 工作效率 解放 数据库

大家好,我是Java陈序员

要说现在Java后端开发中,最火的框架肯定是SpringBoot

而持久层的框架首推MyBatis,MyBatisPlus作为MyBatis的增强框架,其强大的CURD能力,被广大的开发者所喜爱!

SpringBoot+MyBatisPlus可以说是王炸级别的组合!

今天给大家介绍一个可以快速生成后端代码的工具,兼容SpringBootMyBatisPlus框架!

mybatis-plus-generator-ui一个提供交互式的Web UI用于生成兼容MyBatisPlus框架的相关功能代码的工具。

代码生成包括EntityMapperMapper.xmlServiceController等。

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

项目使用

引入依赖:

<dependency>
    <groupId>com.github.davidfantasy</groupId>
    <artifactId>mybatis-plus-generator-ui</artifactId>
    <version>2.0.5</version>
    <scope>test</scope>
</dependency>

编写主启动类:

public class MyBatisPlusGenerator {

    public static void main(String[] args) {
        GeneratorConfig generatorConfig = GeneratorConfig.builder()
                // 数据库连接地址
                .jdbcUrl("jdbc:mysql://localhost:3306/second_kill?serverTimezone=Asia/Shanghai&characterEncoding=utf-8")
                // 数据库用户名
                .userName("root")
                // 数据库密码
                .password("root")
                // 数据库驱动
                .driverClassName("com.mysql.cj.jdbc.Driver")
                // 数据库 schema,MySQL,PGSQL,ORACLE,DB2 类型的数据库需要指定
                .schemaName("")
                // 自定义各类文件名生成规则
                .nameConverter(new NameConverter() {
                    @Override
                    public String controllerNameConvert(String entityName) {
                        return this.entityNameConvert(entityName) + "Controller";
                    }

                    @Override
                    public String serviceNameConvert(String entityName) {
                        return this.entityNameConvert(entityName) + "Service";
                    }

                    @Override
                    public String mapperNameConvert(String entityName) {
                        return this.entityNameConvert(entityName) + "Mapper";
                    }
                })
                // 所有生成 Java 文件的父级包名,也可以在 UI 界面上配置
                .basePackage("com.codechen.scaffold")
                // UI 界面端口
                .port(9090)
                .build();
        MybatisPlusToolsApplication.run(generatorConfig);
    }
}

运行启动后,浏览器访问:

http://ip:9090

主要功能

数据表的浏览和查询: 加载数据源中配置的数据库表信息,可以选择一张或多张表生成模板代码
数据表浏览查询

代码模板文件配置: 工具内置 EntityMapperServiceController 等 6 种类型代码模板,可以个性化修改,也可以手动上传模板进行配置
代码模板文件配置

代码模板生成基本配置:
代码模板生成基本配置

代码模生成策略配置:
代码模生成策略配置

代码生成: 可以指定作者名、功能模块名、生成哪些文件等
代码生成

SQL 生成代码: 可以通过手写 SQL 转成 Java 代码
Img

SQL 生成代码配置: 可以指定作者名、是否启用 LombokMapper 文件名等等
SQL 生成代码配置

总结

这个代码生成器的功能,大部分能满足我们日常开发需要!

我们只需要在项目中引入依赖,指定数据源,做一些配置,即可在 UI 界面上快速生成代码。解放我们的双手,提高工作效率!

美中不足的是,这个工具不能在页面上直接配置数据源或者数据库,导致我们需要硬编码的修改数据库配置信息

最后,贴上项目地址

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

最后

推荐的开源项目已经收录到GitHub项目,欢迎Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

标签:代码生成,String,代码,entityName,生成,工作效率,解放,数据库
From: https://www.cnblogs.com/codechen8848/p/17848554.html

相关文章

  • 1.MyBatisPlus代码生成器使用
    在项目开发中,快速生成entity、mapper、service、controller包中的简单接口和类能够加速我们开发的速度时间。为此,我们可以使用MyBatis-Plus的代码生成器快速生成前面几个包的接口和代码。快速生成代码的流程依次是:引入依赖、配置文件、编写生成类并启动。1.引入依赖 为......
  • 微信小程序记住密码,让登录解放双手
    密码是用户最重要的数据,也是系统最需要保护的数据,我们在登录的时候需要用账号密码请求登录接口,如果用户勾选记住密码,那么下一次登录时,我们需要将账号密码回填到输入框,用户可以直接登录系统。我们分别对这种流程进行说明:记住密码在请求登录接口成功后,我们需要判断用户是否勾选记......
  • RTC技术沦陷后,人类或将一夜回到解放前?
    来源:来自Twitter-X2Rtc实时音视频技术在近年来得到了快速的发展,其在不同行业的应用场景不断丰富和深化。例如,在在线教育、远程办公、在线医疗等领域,实时音视频技术已经成为这些行业不可或缺的一部分。在这些场景中,实时音视频技术能够提供更为便捷、高效、实时的互动体验,满足用户在......
  • Net 高级调试之十:轻量级代码生成的调试
    一、简介今天是《Net高级调试》的第十篇文章。说起来,高级调试,调试的内容还是挺多的,技巧也不少,但是,要想做一个合格的高级调试人员,还需要掌握如何调试动态生成的IL代码。今天要探讨的高级调试的技巧是如何调试通过Emit动态生成IL代码。可能有人会问,我们不是编写C#代......
  • 解放VSCode+Vue的完整组件库智能提示(包括ant-design-vue、element-plus等)
    解放VSCode+Vue的完整组件库智能提示最近因为一些原因从WebStrom转回VSCode,首先感受到的就是组件库没有智能提示了:这能忍吗?根本不可能!接下来,我带你花三分钟找回遗失的智能提示~首先,本篇文章适用于通过unplugin-vue-components自动引入组件的项目;也就是说,在你的vite.config.js......
  • 使用 ABAP 代码生成区块链
    源代码如下:*&---------------------------------------------------------------------**&ReportZBLOCKCHAIN*&---------------------------------------------------------------------**&*&-------------------------------------------------------......
  • 从HumanEval到CoderEval: 你的代码生成模型真的work吗?
    本文分享自华为云社区《从HumanEval到CoderEval:你的代码生成模型真的work吗?》,作者:华为云软件分析Lab。本文主要介绍了一个名为CoderEval的代码生成大模型评估基准,并对三个代码生成模型(CodeGen、PanGu-Coder和ChatGPT)在该基准上的表现进行了评估和比较。研究人员从真实的开源项......
  • 代码生成器 CodeBuilder 3.2 正式版发布
    CodeBuilder是一款强大的代码生成工具,目前发布了3.2版本,大家可以前去下载体验官方主页。1、多种数据源基于ADO.NET的数据驱动PowerDesignerPDManerDbSchemaSwagger这几种数据源基本上已经覆盖了我们常用的数据环境了,如果你有能力的话,可以自己开发数据源......
  • Mybatis代码生成——velocity模板元素
    { date=2020-09-26 superControllerClassPackage=null superServiceImplClassPackage=com.baomidou.mybatisplus.extension.service.impl.ServiceImpl baseResultMap=true sEntityName=dictBuilding superMapperClass=BaseMapper superControllerClass......
  • Mybatis代码生成——velocity模板语法
    velocity模板其实就是java不分语法的翻译,用到的属性还是java的方法,get,set,等1.截取部分字段substring复制代码1原始字符串:$!ag.tagValue,也许很长,前端页面展示时需要截取字符串。2#set($str=$!ag.tagValue)34#if($str.length()>30)5#set($str=$str.substring(0,30))......