简易版 | 代码生成器(包含插件)

一、代码生成器

先导入依赖

<!-- Mybatis-Plus -->
<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.6</version>
</dependency><!-- 代码生成器 -->
<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.5.6</version>
</dependency><!-- 其他依赖 -->
<dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.31</version>
</dependency>
<dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version>
</dependency>
<dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.9.2</version>
</dependency>
<!-- 加载数据库驱动 -->
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.33</version>
</dependency>

写入application.yaml 文件的配置

# 加载驱动
datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/blog?allowPublicKeyRetrieval=true&serverTimezone=GMT%2B8username: rootpassword: Qwer1234

编写代码生成器类

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import com.mysql.cj.protocol.Resultset;import java.sql.*;
import java.util.Collections;public class CodeGenerator {public static final String URL = "jdbc:mysql://localhost:3306/blog?allowPublicKeyRetrieval=true";public static final String[] arrStr = {// 这里是对应的数据库"ad","ad_type","article","article_tag","article_tag_list","comment","comment_reply","link","user"};public static void main(String[] args) throws SQLException {for (int i = 0; i < arrStr.length; i++) {int finalI = i;FastAutoGenerator.create(URL, "root", "Qwer1234").globalConfig(builder -> {builder.author("XIAOMIE") // 设置作者.enableSwagger() // 开启swagger模式.outputDir("src\\main\\java\\"); // 指定输出目录}).packageConfig(builder -> {builder.parent("com.blog") // 设置父包名aa.moduleName(null) // 设置父包模块名.pathInfo(Collections.singletonMap(OutputFile.xml, "src/main/resources/mapper")); // 设置mapperXml生成路径}).strategyConfig(builder -> {builder.entityBuilder().enableLombok(); // 使用lombokbuilder.controllerBuilder().enableRestStyle(); // 开启生成@RestController控制器builder.addInclude(arrStr[finalI]); // 设置需要生成的表名}).templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板.execute();}}
}

效果图


二、插件 EasyCode


添加数据库输入账号密码


选出想要的数据库

多选数据表 后 右击生成

都生成了但不是我们想要的格式

(重点来了)

可以看到支持自定义模板 而且模板还可以导出呢

(到底了~关注 攻粽号 wmcode 有你想要的)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/29103.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Cisco Packet Tracer实验(五)不同vlan间的通信简单配置

1&#xff0e;单臂路由(图) 环境&#xff1a;一台路由器&#xff0c;一台二层交换机&#xff0c;两台pc机 单臂路由&#xff08;Single Arm Routing&#xff09;是指在网络架构中&#xff0c;只有一个物理接口&#xff08;单臂&#xff09;连接到路由器三层交换机&#xff0c;而…

碉堡了!云原生大佬撰写的K8s学习指南,有点炸裂,建议运维都收藏!

在这个数字化转型的时代&#xff0c;容器化和云原生技术已成为软件开发的重要趋势。【Kubernetes】作为云原生领域的旗舰项目&#xff0c;不仅是一种容器编排工具&#xff0c;更是构建现代、弹性和可扩展应用程序的基础平台。 因此&#xff0c;对于运维人员来说&#xff0c;学…

基于51单片机的音乐彩灯设计

基于51单片机的音乐彩灯设计 &#xff08;程序&#xff0b;原理图&#xff0b;设计报告&#xff09; 功能介绍 具体功能&#xff1a; 由STC单片机ADC0809模块LM386功放模块喇叭音频接口发光二极管电源构成 1.通过音频线输入可以播放电脑、手机、MP3里面的音乐。 2.AD对音频…

17.零代码八爪鱼采集器数据采集与数据导出——如何导出不同格式数据和数据推送到数据库

首先&#xff0c;多数情况下免费版本的功能&#xff0c;已经可以满足绝大多数采集需求&#xff0c;想了解八爪鱼采集器版本区别的详情&#xff0c;请访问这篇帖子&#xff1a; 3.无代码爬虫八爪鱼采集器工具介绍——个人版本、团队版本的适用性_八爪鱼采集器 有单机版本吗-CSDN…

苹果电脑病毒怎么处理 苹果电脑病毒查杀用什么软件 苹果电脑病毒软件

苹果电脑并不是完全免疫于病毒的威胁&#xff0c;尤其是在使用了一些不安全的软件或网站后&#xff0c;可能会感染一些恶意程序&#xff0c;导致电脑运行缓慢&#xff0c;数据丢失&#xff0c;甚至被黑客控制。那么&#xff0c;苹果电脑病毒怎么处理呢&#xff1f;苹果电脑病毒…

高级视频编码器性能对比(H265、VP9、AV1)

1、背景介绍 目前在视频编解码器中&#xff0c;H264已经成为绝对的主流&#xff0c;被大部分设备、浏览器所支持。虽然有更先进的编码器推出&#xff0c;但是受限于推广速度和设备支持成本&#xff0c;一直未能成为主流。 今年公司目标是持续降本增效&#xff0c;现在将”屠刀…

vue分页

先看效果 再看代码 <!-- 分页 --><div v-if"pageParams.pageCount > 1" class"flex justify-end mt-6"><n-paginationv-model:page"pageParams.page" v-model:page-size"pageParams.pageSize" :page-count"pa…

Unity3D MMORPG加载背包配置表详解

一、引言 在Unity3D开发的大型多人在线角色扮演游戏&#xff08;MMORPG&#xff09;中&#xff0c;背包系统扮演着至关重要的角色。它不仅是玩家存储和管理物品的地方&#xff0c;更是游戏经济体系和交互系统的重要组成部分。背包的配置表加载是背包系统实现的关键步骤之一&am…

Hazelcast 分布式缓存 在Seatunnel中的使用

1、背景 最近在调研seatunnel的时候&#xff0c;发现新版的seatunnel提供了一个web服务&#xff0c;可以用于图形化的创建数据同步任务&#xff0c;然后管理任务。这里面有个日志模块&#xff0c;可以查看任务的执行状态。其中有个取读数据条数和同步数据条数。很好奇这个数据…

羊城杯 2020 a_piece_of_java

考点:JDBC反序列化打CC链动态代理类触发readobject 一眼看过去 好像只有一个mysql-connector-java 可以利用jdbc 可能的攻击路径就有1) Mysql服务器任意文件读取 2) JDBC反序列化打依赖链 出现了一个不常见的依赖库 serialkiller 做了反序列化的过滤器 可以尝试查看其源码 htt…

2000-2022年上市公司员工、工资数据

2000-2022年上市公司员工、工资数据 1、时间&#xff1a;2000-2022年 2、来源&#xff1a;上市公司年报 3、指标&#xff1a;年份、股票代码、股票简称、行业名称、行业代码、省份、城市、区县、行政区划代码、城市代码、区县代码、首次上市年份、上市状态、员工人数_人、应…

Windows 与 Java 环境下的 Redis 利用分析

1 前言 在最近的一次攻防演练中&#xff0c;遇到了两个未授权访问的 Redis 实例。起初以为可以直接利用&#xff0c;但后来发现竟然是Windows Java (Tomcat)。因为网上没有看到相关的利用文章&#xff0c;所以在经过摸索&#xff0c;成功解决之后决定简单写一写。 本文介绍了…

【工程2区】毕业神刊 —— 1-2个月录用!非黑!非预警!

【欧亚科睿学术】 电力能源类SCIE ✅ 进展超顺 ✅ 录用率高 ✅ 领域相关均可 【期刊简介】IF&#xff1a;1.0-2.0&#xff0c;JCR2区&#xff0c;中科院4区 【版面类型】正刊&#xff0c;仅少量版面 【终审周期】走期刊部系统&#xff0c;预计3个月左右录用 【检索情况…

Linux基本知识----3

1.什么是linux&#xff1f; Linux继承了Unix以网络为核心的设计思想&#xff0c;是一个性能稳定的多用户网络操作系统 2.为什么 Linux 体系结构要分为用户空间和内核空间的原因&#xff1f; Linux 为了保护内核的安全&#xff0c;把系统分成了两部分。 3.BASH和DOS之间的基…

使用SpringBoot对接Kafka

Kafka是什么&#xff0c;以及如何使用SpringBoot对接Kafka 一、Kafka与流处理 我们先来看看比较正式的介绍&#xff1a;Kafka是一种流处理平台&#xff0c;由LinkedIn公司创建&#xff0c;现在是Apache下的开源项目。Kafka通过发布/订阅机制实现消息的异步传输和处理。它具有高…

JS是什么

JS 是 JavaScript 的缩写&#xff0c;它是一种轻量级的、解释型的或即时编译型的编程语言。JavaScript 主要被用于在网页上实现动态的、交互式的功能。它可以直接嵌入到HTML网页中&#xff0c;也可以通过外部文件来链接。 JavaScript 有以下主要特性和用途&#xff1a; 动态交…

JAVA动态表达式:反向解析表达式

接上面&#xff1a; JAVA动态表达式&#xff1a;Antlr4 G4 模板 读取字符串表达式结构树-CSDN博客 JAVA动态表达式&#xff1a;Antlr4 表达式树解析-CSDN博客 JAVA动态表达式&#xff1a;Antlr4 G4模板-CSDN博客 上面的内容是实现了表达式转行成类。 如&#xff1a;proc…

【保姆级】Linux 基于 Docker 部署 ES7.7.0 elasticsearch7.7.0

一、拉取 ES 镜像 docker pull elasticsearch:7.7.0二、创建挂载目录并授权 # 挂载目录 mkdir ~/elasticsearch mkdir ~/elasticsearch/config mkdir ~/elasticsearch/data mkdir ~/elasticsearch/plugins# 赋予权限 sudo chmod -R 777 &#xff5e;/elasticsearch/ sudo chm…

组件二次封装,通过属性事件透传,插槽使用,组件实例方法的绑定,深入理解 Vue.js 组件扩展与插槽

透传&#xff0c;插槽&#xff0c;组件实例方法的绑定&#xff0c;深入理解 Vue.js 组件扩展与插槽 前言 Vue.js 提供了强大的组件化系统&#xff0c;允许开发者构建可复用、可组合的UI组件。在实际项目中&#xff0c;直接使用第三方库提供的基础组件&#xff08;如Element UI…

Internet Download Manager(IDM6.41)软件下载-详细安装教程视频

Internet Download Manager有一个智能下载逻辑加速器&#xff0c;具有智能动态文件分割和安全的多部分下载技术&#xff0c;可以加速下载。与其他下载加速器和管理器不同&#xff0c;Internet下载管理器在下载开始之前对文件进行分段&#xff0c;而Internet下载管理器在下载过程…