当前位置: 首页 > news >正文

mybatiplus代码生成器

目录

1.pom文件引入

2.引入模板引擎

3.注意


新版本,老版本配置和用法都不太一样,此处暂不展示;另外也可以尝试一下MyBatis-Flex  总之mybatisplus有的或者收费的,它都有MyBatis-Flex 是什么 - MyBatis-Flex 官方网站

1.pom文件引入

mysql  lombok插件安装自己所需 到仓库找: https://mvnrepository.com/

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.3.2</version>
</dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <scope>provided</scope>
        </dependency>

2.引入模板引擎

freemaker 或者另外的模板引擎velocity;推荐freemaker

<dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>freemarker</artifactId>
</dependency>

或者

<dependency>
    <groupId>org.apache.velocity</groupId>
    <artifactId>velocity</artifactId>
    <version>1.7</version>
</dependency>

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;import java.util.ArrayList;
import java.util.Collections;public class CodeUtils {public static void main(String[] args) {ArrayList<String> strings = new ArrayList<>();strings.add("zip_code");for (String tableName : strings) {genecode(tableName, "com.admin");}}public static void genecode(String tableName, String filePath) {FastAutoGenerator.create("jdbc:mysql://localhost:3306/xk?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai", "用户", "密码").globalConfig(builder -> {builder.author("author") // 设置作者
//                            .enableSwagger() // 开启 swagger 模式
//                            .fileOverride() // 覆盖已生成文件 已过时到strategyConfig 中去配置.dateType(DateType.TIME_PACK).commentDate("yyyy-MM-dd HH:mm:ss").outputDir("D:\\develop\\xk\\xadmin\\src\\main\\java"); // 指定输出目录}).packageConfig(builder -> {builder.parent(filePath) // 设置父包名.pathInfo(Collections.singletonMap(OutputFile.xml, "D:\\develop\\xk\\xadmin\\src\\main\\resources\\mapper")); // 设置mapperXml生成路径}).strategyConfig(builder -> {builder.addInclude(tableName).entityBuilder().enableLombok().serviceBuilder().mapperBuilder().controllerBuilder().enableRestStyle();}).templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板.execute();}
}

指定一下项目的输出路径;添加表名,一键输出

3.注意

3.1 tinyint默认为Byte,需要修改为Integer

3.2 如果表字段比较特殊,比如用'' 单引号包裹的,需要在相应的字段添加注解 @TableField("''") 如果是其他则用其他

3.3 文件覆盖问题,暂不推荐

http://www.lryc.cn/news/149345.html

相关文章:

  • leetcode分类刷题:哈希表(Hash Table)(三、循环存在问题)
  • 43、基于 springboot 自动配置的 spring mvc 错误处理,就是演示项目报错后,跳转到自定义的错误页面
  • 干货分享,现代列式数据库系统如何设计与实现? | StoneData 论文选读
  • 说说构建流批一体准实时数仓
  • 北京筑龙受邀出席中物联“采购供应链中国行—走进雄安”活动
  • 【Tkinter界面:练习-01】窗口-部件-布局
  • LeetCode每日一题:823. 带因子的二叉树(2023.8.29 C++)
  • 【教学类-35-01】学号+姓名+班级(描字帖)A4一页
  • UE5 里的一些常用的了解
  • 【网络安全带你练爬虫-100练】第19练:使用python打开exe文件
  • 【2D/3D RRT* 算法】使用快速探索随机树进行最佳路径规划(Matlab代码实现)
  • 用反射实现自定义Java对象转化为json工具类
  • rk3568 nvme硬盘分区,格式化,挂载测试
  • Failed to load ApplicationContext解决办法,spring版本问题
  • Is f(z)=1/z truly an analytic function
  • 代理模式 静态代理和动态代理(jdk、cglib)——Java入职第十一天
  • Remmina在ubuntu22.04中无法连接Windows
  • 【uniapp】this有时为啥打印的是undefined?(箭头函数修改this)
  • 2023高教社杯数学建模思路 - 复盘:光照强度计算的优化模型
  • 河道漂浮物检测:安防监控/视频智能分析/AI算法智能分析技术如何助力河道整治工作?
  • Dubbo 应用切换 ZooKeeper 注册中心实例,流量无损迁移
  • ADB入门教程
  • SQLPro Studio for Mac:强大的SQL开发和管理工具
  • 淘宝API技术解析,实现按图搜索淘宝商品
  • 错误:依赖检测失败: mysql-community-libs(x86-64) >= 5.7.9 被 (已安裝) mysql-community-li
  • 使用MATLAB解算炼油厂的选址
  • AudioTrack播放音乐之getMinBufferSize
  • React和Redux中的不变性
  • NPM 常用命令(一)
  • 【ES6】Promise推荐用法