这个工具,节省80%工作量不过分吧
哈喽,大家好,我是指北君。
俗话说,工具用的好,下班下的早。
Mybatis代码生成器相信大家用过,本篇博客我们来介绍如何一键生成mybatisplus 的相关Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码。可能别人花两天时间完成的代码,你一个小时就搞定了。
1、官方教程
参考文档如下:https://mybatis.plus/guide/generator.html
其实官方教程写的很详细了,这里我在详细的讲解一下官方的文档。
2、添加依赖
MyBatis-Plus 从 3.0.3 之后移除了代码生成器与模板引擎的默认依赖,需要手动添加相关依赖。
①、添加代码生成器依赖
复制
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.3.2</version>
</dependency>
1.
2.
3.
4.
5.
②、添加 模板引擎 依赖
mybatis plus 提供了三种模板引擎,另外也可以通过继承类 com.baomidou.mybatisplus.generator.engine.AbstractTemplateEngine,来自定义模板引擎。
通常我们使用导入默认的依赖就好。
复制
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.2</version>
</dependency>
1.
2.
3.
4.
5.
3、编写配置
主要包括全局配置GlobalConfig(生成文件的目录,作者名等),数据源配置 DataSourceConfig,模板配置 TemplateConfig。
下面我贴上完整代码,具体可以查看代码解释。
GitHub地址如下:https://github.com/YSOcean/mybatisplusstudy.git
另外,代码中的相关配置可以参考官网:https://mybatis.plus/config/generator-config.html
复制
package com.ys.mybatisplusstudy.generator;
import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.InjectionConfig;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.po.TableInfo;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* 执行 main 方法控制台输入模块表名回车自动生成对应项目目录中
*/
public class CodeGenerator {
/**
* <p>
* 读取控制台内容
* </p>
*/
public static String scanner(String tip){
Scanner scanner = new Scanner(System.in);
StringBuilder help = new StringBuilder();
help.append("请输入" + tip + ":");
System.out.println(help.toString());
if (scanner.hasNext()) {
String ipt = scanner.next();
if (StringUtils.isNotEmpty(ipt)) {
return ipt;
}
}
throw new MybatisPlusException("请输入正确的" + tip + "!");
}
public static void main(String[] args){
// 代码生成器
AutoGenerator mpg = new AutoGenerator();
// 全局配置
GlobalConfig gc = new GlobalConfig();
String projectPath = System.getProperty("user.dir");
//生成文件的目录
gc.setOutputDir(projectPath + "/src/main/java");
//生成文件的作者声明
gc.setAuthor("IT可乐");
//是否打开输出目录
gc.setOpen(false);
//是否开启 BaseResultMap
gc.setBaseResultMap(true);
//是否开启baseColumnList
gc.setBaseColumnList(true);
//实体属性 Swagger2 注解
gc.setSwagger2(true);
mpg.setGlobalConfig(gc);
// 数据源配置
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:service@webmeng.net 进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
以上信息是否解决您的问题?
相关问题
- 阿里云OSS云储存
- JS 早中晚 提示问候代码
- Webmeng X 2025 升级
- webmeng 循环 列出 数据
- PHP判断语句
- 这个工具,节省80%工作量不过分吧
- CodeIgnter 报错 The Encrypt library...
- WebmengWeb 2024 体验版下载
- liunx系统开启推送服务
- Webmeng2024内页升级大全-访问ID分类地区留言 | 推荐
- webmeng第5代升级
- Webmeng登录模块login
- phpstudy配置运行CI4框架
- CI4框架应用三 - app目录
- Webmeng404错误 模板路径
- PHP获取当前页面URL路径
- CI框架中的开启调试模式
- JS如何实现网站中PC端和手机端自动识别并跳转对应的代码
- JS---PC端和移动端的无缝切换
- pc端、手机端网页切换
- 关于smarty限制文字输出字数
- php smarty 限制显示字数,smarty现在显示字数的各种...
- nginx和apache的区别,选择哪个好?
- Webmeng系统在Nginx下载伪静态写法
- ci 地址去掉index.php,CI框架去掉index.php的方
- search-高级搜索
- Webmeng 2022 V13.0.1 下载地址
- wap手机网页html通过特殊链接:打电话,发短信,发邮件详细教程
- Webmeng分类导航标签,模板
- Webmeng模板路径
- Webmeng内页导航
- Webmeng三级分类
- Webmeng控制器统计实现
- PHP安装扩展mcrypt以及相关依赖项 【PHP安装PECL扩展...
- Webmeng配置字段调用
- 调用Webmeng统计数据
- PHP单页统计方法
- .PHP后缀去除方法
- WebmengSAAS 商品管理 - 新增商品
- Webmengshop 支付宝配置
餐厅介绍
自助餐厅
用户评论