Mybatis-Plus代码自动生成器

2023-10-27

// 代码自动生成器
public class EasyCode {
   public static void main(String[] args) {
    // 需要构建一个 代码自动生成器 对象
    AutoGenerator mpg = new AutoGenerator();
    // 配置策略
    // 1、全局配置
    GlobalConfig gc = new GlobalConfig();
    String projectPath = System.getProperty("user.dir");
    gc.setOutputDir(projectPath+"/src/main/java");
    gc.setAuthor("g0rez");
    gc.setOpen(false);
    gc.setFileOverride(false); // 是否覆盖
    gc.setServiceName("%sService"); // 去Service的I前缀
    gc.setIdType(IdType.ID_WORKER);
    gc.setDateType(DateType.ONLY_DATE);
    gc.setSwagger2(true);
    mpg.setGlobalConfig(gc);
    //2、设置数据源
    DataSourceConfig dsc = new DataSourceConfig();
    dsc.setUrl("jdbc:mysql://localhost:3306/database?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8");
    dsc.setDriverName("com.mysql.cj.jdbc.Driver");
    dsc.setUsername("root");
    dsc.setPassword("root");
    dsc.setDbType(DbType.MYSQL);
    mpg.setDataSource(dsc);
    //3、包的配置
    PackageConfig pc = new PackageConfig();
    pc.setModuleName("model");
    pc.setParent("com.g0rez");
    pc.setEntity("entity");
    pc.setMapper("mapper");
    pc.setService("service");
    pc.setController("controller");
    mpg.setPackageInfo(pc);
    //4、策略配置
    StrategyConfig strategy = new StrategyConfig();
    strategy.setInclude("user"); // 设置要映射的表名
    strategy.setNaming(NamingStrategy.underline_to_camel);
    strategy.setColumnNaming(NamingStrategy.underline_to_camel);
    strategy.setEntityLombokModel(true); // 自动lombok;
    strategy.setLogicDeleteFieldName("deleted");
    // 自动填充配置
    TableFill gmtCreate = new TableFill("gmt_create", FieldFill.INSERT);
    TableFill gmtModified = new TableFill("gmt_modified",FieldFill.INSERT_UPDATE);
    ArrayList<TableFill> tableFills = new ArrayList<>();
    tableFills.add(gmtCreate);
    tableFills.add(gmtModified);
    strategy.setTableFillList(tableFills);
    // 乐观锁
    strategy.setVersionFieldName("version");
    strategy.setRestControllerStyle(true);
    strategy.setControllerMappingHyphenStyle(true); //localhost:8080/hello_id_2
    mpg.setStrategy(strategy);
    mpg.execute(); //执行
 }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mybatis-Plus代码自动生成器 的相关文章

随机推荐

  • flutter 本项目做IM消息提醒的思路

    message util 监听接收到消息 container page 在最外层监听消息 如果有收到就弹出弹窗IMNoticeDialog 用converScreen封装过的 可以穿透 可以点击 conversationItem 进入 co
  • 基于MATLAB的战术手势识别功能的设计与实现

    一 课题介绍 手势识别技术是人们生活中常见的一类图像处理技术 也是目前比较火热的研究领域之一 手势识别可以用于人们生活中各种场景 比如利用手势进行电视信息交互 只需要通过手势就能实现对电视机的控制 在很多的VR游戏中 利用手势可以完成各种各
  • mptt介绍

    1 MQTT协议是由IBM开发的即时通讯协议 相比来说比较适合物联网场景的通讯协议 MQTT协议采用发布 订阅模式 所有的物联网终端都通过TCP连接到云端 云端通过主题的方式管理各个设备关注的通讯内容 负责将设备与设备之间消息的转发 2 m
  • 关于Java中对象的比较

    Java对象的比较有这三种 第一种equals 方法是对象值的比较 这是Object类提供的方法 第二种 第三种分别是实现Comparable Comparator接口 Object equals Comparable Comparator
  • 【C++】error LNK2019: 无法解析的外部符号

    转 C error LNK2019 无法解析的外部符号 错误解决方案 今天在实现类模板特例化的时候遇到一个问题 就是把类模板函数实现放到类的cpp文件中 然后在main函数中使用这个类的时候 就会出现无法解析的外部符号 函数名 xxxx 等
  • 深圳求职安全防范手册

    深圳作为中国第四大经济城市 吸引了来自全国各地的大批求职者 因为人口流动性较大 人员组成复杂 治安方面难免会出现一些问题 所以特整理这份求职安全防范手册 希望可以对准备到深圳求职或者已经在深圳求职的你提一个醒 防患于未然 毕竟出门在外 安全
  • 实现一个函数,可以左旋字符串中的k个字符。

    实现一个函数 可以左旋字符串中的k个字符 例如 ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 方法一 一 我们先假定这串字符为ABCDE 假设左旋1次 我们可以进行如下操作 ABCDE 一开始 BBCDE 第一次 第一
  • Go语言数据结构-二叉树

    定义 二叉树是一种数据结构 它是由 n n 1 个有限节点组成一个具有层次关系的集合 根节点 最上面的节点 叶子节点 左右子节点都为nil的节点 特点 每个节点有零个或两个子节点 没有父节点的节点称为根节点 每一个非根节点有且只有一个父节点
  • C++学习记录———容器的简单整理

    1 容器的概念 容器是用来批量存储数据的集合 数据元素可以是用户自定义类型 也可以是C 预定定义类型 容器类的对象自动申请和释放内存 无需new和delete操作 容器 顺序容器 和关联容器 顺序容器 元素之间是顺序关系 元素有固定的位置
  • LaTeX技巧1:加粗、斜体

    对一般字母加粗 mathbf 对希腊字母加粗 usepackage bm bm 斜体 emph
  • github项目自荐(django项目)

    这篇文章来介绍一下我的一个GitHub项目 如果对这个项目有什么建议或者这个项目有什么bug请大家在评论区或者在Github issues给我建议 谢谢 1 首先先上GitHub项目的链接 GitHub first coding djang
  • CPU如何知道当前运行的是操作系统还是一般应用软件

    CPU如何知道当前运行的是操作系统还是一般应用软件 有赖于处理器状态的标识
  • python_if练习2:猜拳游戏

    题目要求 1 从控制台输入你要出的拳 石头 1 剪刀 2 布 3 2 电脑随即出拳 3 比较胜负 脚本内容 import random 1 从控制台输入要出的拳 player int input 请输入您要出的拳 石头1 剪刀2 布3 2
  • 使用nwjs-builder-phoenix构建跨平台桌面应用程序

    原文地址 使用nwjs builder phoenix构建跨平台桌面应用程序 BIGTREE whwtree com NW js应用自动打包的两种方式 nwjs builder phoenix 推荐 nw builder 本文主要讲述使用n
  • Centos7.9安装k8s图文详解

    Kubernetes用两种部署方式 1 kubeadm Kubeadm是一个k8s部署工具 提供kubeadm inint和 kubeadm join 用于快速部署Kubenetes集群 2 二进制部署 从github下载二进制包 手动部署
  • 服务器硬盘指示灯的显示说明

    硬盘驱动器活动指示灯 绿色 硬盘驱动器状态指示灯 绿色和琥珀色 下表针对配置了RAID 阵列的HD 指示灯不同显示对应的状态说明 驱动器状态指示灯显示方式 仅适用于 RAID 状态 每秒呈绿色闪烁两次 正在识别驱动器或准备卸下 不亮 准备插
  • 【spring mvc】Spring MVC拦截器+注解方式实现防止表单重复提交

    方法很多 先转载下 后面一个个实验 获得最优方案 原理 在新建页面中Session保存token随机码 当保存时验证 通过后删除 当再次点击保存时由于服务器端的Session中已经不存在了 所有无法验证通过 1 新建注解 java view
  • 贪心算法解决最小集合覆盖问题

    AVL自平衡树 关键就是对于递归的每一步插入都要进行判断 而不是对于root节点进行判断 ac代码 include
  • Web 前端开发技术 ——html

    Web 前端开发技术 html 文章目录 Web 前端开发技术 html 一 html 文件结构 二 文本 三 图片 四 音频和视频 五 超链接 六 表单 七 列表 八 表格 九 语义标签 一 html 文件结构 html的所有标签为树型结
  • Mybatis-Plus代码自动生成器

    代码自动生成器 public class EasyCode public static void main String args 需要构建一个 代码自动生成器 对象 AutoGenerator mpg new AutoGenerator