代码生成器

  • 快速生成各项代码

步骤

  • 创建Generator类,并创建main方法
  • 创建代码生成器
    AutoGenerator autoGenerator = new AutoGenerator();
  • 连接要生成实体类的数据库
        DataSourceConfig dataSource = new DataSourceConfig();
dataSource.setDriverName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/mybatisplus_db?serverTimezone=UTC");
dataSource.setUsername("root");
dataSource.setPassword("1234");
autoGenerator.setDataSource(dataSource);
  • 配置全局设置
        // 设置全局配置
GlobalConfig globalConfig = new GlobalConfig();
// 设置生成的代码的输出目录
globalConfig.setOutputDir(System.getProperty("user.dir") + "/mybatisplus_04_generator/src/main/java");
// 设置生成完毕后是否打开生成代码所在目录(默认为true)
globalConfig.setOpen(false);
// 设置作者
globalConfig.setAuthor("程渝");
// 设置是否覆盖原始代码(默认为false)
globalConfig.setFileOverride(true);
// 设置数据层接口名,%s为占位符,指代模块名称
globalConfig.setMapperName("%sDao");
// 设置id生成策略
globalConfig.setIdType(IdType.ASSIGN_ID);
autoGenerator.setGlobalConfig(globalConfig);
  • 配置包名相关设置
        // 设置包名相关配置
PackageConfig packageConfig = new PackageConfig();
// 设置生成的包名
packageConfig.setParent("com.aaa");
// 设置实体类包名
packageConfig.setEntity("domain");
// 设置数据层包名
packageConfig.setMapper("dao");
autoGenerator.setPackageInfo(packageConfig);
  • 配置策略设置
// 策略设置
StrategyConfig strategyConfig = new StrategyConfig();
// 设置当前参与生成的表名,参数为String...,可传入多个表名
strategyConfig.setInclude("tbl_user");
// 设置表名前缀,模块名=数据库表名-表名前缀
strategyConfig.setTablePrefix("tbl_");
// 设置是否启用Rest风格
strategyConfig.setRestControllerStyle(true);
// 设置乐观锁字段名
strategyConfig.setVersionFieldName("version");
// 设置逻辑删除字段名
strategyConfig.setLogicDeleteFieldName("deleted");
// 设置是否启用lombok
strategyConfig.setEntityLombokModel(true);
autoGenerator.setStrategy(strategyConfig);
  • 执行代码生成
        // 执行代码生成
autoGenerator.execute();
  • 生成结果

  

MyBatisPlus——代码生成器的更多相关文章

  1. Mybatis-Plus 代码生成器基本使用

    Mybatis-Plus 代码生成器基本使用 参考 https://mp.baomidou.com/guide/generator.html#%E4%BD%BF%E7%94%A8%E6%95%99%E ...

  2. mybatis-plus代码生成器两版(全部生成+部分生成)

    mybatis-plus代码生成器两版(全部生成+部分生成) 一次性生成全部文件 package com.layuicms.erp.utils; import java.util.List; impo ...

  3. 实战:一键生成前后端代码,Mybatis-Plus代码生成器让我舒服了

    实战:一键生成前后端代码,Mybatis-Plus代码生成器让我舒服了 前言 在日常的软件开发中,程序员往往需要花费大量的时间写CRUD,不仅枯燥效率低,而且每个人的代码风格不统一.MyBatis-P ...

  4. MyBatis-Plus 代码生成器模板

    MyBatis-Plus 代码生成器模板 maven 依赖 <!--Mysql--> <dependency> <groupId>mysql</groupId ...

  5. MyBatis-Plus代码生成器的使用

    1.MyBatis-Plus简介 ​ 在代码开发中,肯定会遇到代码中对应数据库表去编写实体类的工作,若数据库表数量多的情况下,编写Entity,属实是一件消耗时间,且并没有什么技术含量的事情,如何解决 ...

  6. SpringBoot集成MyBatis-Plus代码生成器(Dao)

    1.说明 本文基于SpringBoot集成MyBatis-Plus代码生成器, 把原来生成Entity.Mapper.Mapper XML.Service.Controller等各个模块的代码, 修改 ...

  7. SpringBoot集成MyBatis-Plus代码生成器

    1.说明 本文详细介绍Spring Boot集成MyBatis-Plus代码生成器的方法. 基于一个创建好的Spring Boot工程, 执行MyBatis-Plus提供的AutoGenerator代 ...

  8. mybatisplus代码生成器

    一.随便建一个springboot工程,在pom文件中导入依赖 <!-- 模板引擎 --> <dependency> <groupId>org.apache.vel ...

  9. Mybatisplus代码生成器主类CodeGenerator配置

    //代码自动生成public class CodeGenerator { /** * <p> * 读取控制台内容 * </p> */ public static String ...

  10. Mybatis-Plus代码生成器使用详解

    首先创建springboot的项目(创建步骤省略) 创建好项目后要配置maven依赖,附上pom.xml: <?xml version="1.0" encoding=&quo ...

随机推荐

  1. Docker 容器开发:虚拟化

    Docker 容器开发:虚拟化 Docker 的核心价值在于虚拟化或者说环境隔离[通过虚拟化技术实现虚拟环境],解决环境配置和部署的依赖问题实现解耦 我对虚拟化的理解源自<Operating S ...

  2. CF1951

    A link 这个题就是讨论. 首先,如果没有\(1\)就一定可以. 如果有\(1\). 如果长度为\(2\)一定不行. \(1\)的个数为奇数不行. 如果为偶数 有一个小点:如果是\(2\)个\(1 ...

  3. python面向对象游戏练习:好人坏人手枪手榴弹

    python面向对象游戏练习:好人坏人手枪手榴弹 主要是多态的练习,对象作为参数传给方法使用 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 ...

  4. SLF4J2.0.x与Logback1.3.x的绑定变动还是很大的,不要乱点鸳鸯谱

    开心一刻 今天跟我姐聊天 我:我喜欢上了我们公司的一个女同事,她好漂亮,我心动了,怎么办 姐:喜欢一个女孩子不能只看她的外表 我:我知道,还要看她的内在嘛 姐:你想多了,还要看看自己的外表 背景介绍 ...

  5. 【Vue】动态方法调用

    JS的动态方法调用是通过eval函数实现 但是在Vue中是通过组件的$options.methods实现, 写这篇的随笔的原因是因为今天为了封装面包屑组件,花了一下午折腾这个动态方法调用 调用DEMO ...

  6. 【Vue】Re13 CLI(Command Line Interface)

    一.What is CLI Command Line Interface 命令行接口 但是说是命令行界面,在官方又被称为脚手架 一个单词三个意思,所以令人困惑 但是根据实际意义用途来说就是帮助开发者更 ...

  7. Google的TPU的Pallas扩展无法使用jax的随机数生成

    Google的TPU的Pallas无法使用jax的随机数生成 地址: https://jax.readthedocs.io/en/latest/pallas/tpu.html

  8. 【转载】 python之理解super及MRO列表

    原文地址:   https://www.jianshu.com/p/de7d38c84443 ----------------------------------------------------- ...

  9. 老代码报错:scipy.misc.imresize报错: AttributeError: module 'scipy.misc' has no attribute 'imresize'

    运行老代码报错: image = misc.imresize(image, [Config.IMAGE_HEIGHT, Config.IMAGE_WIDTH], 'bilinear')Attribut ...

  10. 关于python:pip安装选项“ ignore-installed”和“ force-reinstall”之间的区别

    参考: https://www.codenong.com/51913361/ ==================================================== 官方文档解释: ...