• mybatisplus自动生成器


    一、pom.xml

    1. <dependency>
    2. <groupId>com.baomidougroupId>
    3. <artifactId>mybatis-plus-boot-starterartifactId>
    4. <version>3.5.2version>
    5. dependency>
    6. <dependency>
    7. <groupId>com.baomidougroupId>
    8. <artifactId>mybatis-plus-generatorartifactId>
    9. <version>3.5.2version>
    10. dependency>
    11. <dependency>
    12. <groupId>org.freemarkergroupId>
    13. <artifactId>freemarkerartifactId>
    14. dependency>
    15. <dependency>
    16. <groupId>mysqlgroupId>
    17. <artifactId>mysql-connector-javaartifactId>
    18. <scope>runtimescope>
    19. dependency>

    二、CodeGenerator.java

    1. package com.rating;
    2. import com.baomidou.mybatisplus.generator.FastAutoGenerator;
    3. import com.baomidou.mybatisplus.generator.config.OutputFile;
    4. import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
    5. import java.util.Collections;
    6. public class CodeGenerator {
    7. public static void main(String[] args) {
    8. // 配置数据库
    9. String url = "jdbc:mysql:///rating_manage";
    10. String username = "root";
    11. String password = "root";
    12. String tables = "r_user"; // 设置需要生成的表名
    13. String tablePrefix = "r_"; // 设置过滤表前缀
    14. //String tables = "x_user,x_role,x_menu,x_user_role,x_role_menu";
    15. // 配置路径
    16. String projectPath = System.getProperty("user.dir"); // 项目路径
    17. String outputDir = projectPath + "\\src\\main\\java"; // 指定输出目录
    18. String packageName = "com.rating"; // 设置父包名
    19. String moduleName = "system"; // 设置父包模块名
    20. String mapperLocation = projectPath + "\\src\\main\\resources\\mapper\\" + moduleName; // 设置mapperXml生成路径
    21. FastAutoGenerator.create(url, username, password)
    22. .globalConfig(builder -> {
    23. builder.outputDir(outputDir); // 指定输出目录
    24. //.author("chwb") // 设置作者
    25. //.enableSwagger() // 开启 swagger 模式
    26. //.fileOverride(); // 覆盖已生成文件
    27. })
    28. .packageConfig(builder -> {
    29. builder.parent(packageName) // 设置父包名
    30. .moduleName(moduleName) // 设置父包模块名
    31. .pathInfo(Collections.singletonMap(OutputFile.xml, mapperLocation)); // 设置mapperXml生成路径
    32. })
    33. .strategyConfig(builder -> {
    34. builder.addInclude(tables) // 设置需要生成的表名
    35. .addTablePrefix(tablePrefix) // 设置过滤表前缀
    36. .entityBuilder().enableLombok() //entity 包开启 lombok
    37. .controllerBuilder().enableRestStyle(); // controller 包开启RestController模式
    38. })
    39. .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
    40. .execute();
    41. }
    42. }

  • 相关阅读:
    性能调优|Jmeter工具使用简记
    nn.PairwiseDistance 和 torch.cdist 和 MSELoss 计算距离
    2022年面试天花板,Java岗史上最全八股文面试真题汇总
    hyperf 前置中间件 后置中间件
    痛苦与反思:想提升自己,却不知道该如何做
    Unity UGUI(二)核心组件
    2.3IP详解及配置
    Matlab:Matlab编程语言学习之如何读取外部文件(如xlsx、txt等文件)案例应用之详细攻略
    Java基于微信小程序的自习室系统的设计,附源码、教程
    面试官:线程崩了,为什么不会导致 JVM 崩溃呢?如果是主线程呢?
  • 原文地址:https://blog.csdn.net/CHWB2580/article/details/132828084