Mybatis-plus 代码生成器
简介: Mybatis-Plus 给我们带来了代码生成器 AutoGenerator ,根据数据库表一键生成domain,dao等包的代码,建议工作后再使用,以下为相关代码:
Maven相关依赖
<!--代码生成器--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.4.1</version> </dependency> <!--velocity模板引擎--> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.3</version> </dependency>
代码生成器使用
public class CodeGenerator { public static void main(String[] args) { //1.获取代码生成器的对象 AutoGenerator autoGenerator = new AutoGenerator(); //2.设置数据库相关配置 DataSourceConfig dataSource = new DataSourceConfig(); dataSource.setDriverName("com.mysql.cj.jdbc.Driver"); dataSource.setUrl("jdbc:mysql://localhost:3306/dbName?serverTimezone=UTC"); dataSource.setUsername("root"); dataSource.setPassword("1234"); autoGenerator.setDataSource(dataSource); //3.设置全局配置 GlobalConfig globalConfig = new GlobalConfig(); //设置生成完毕后是否打开生成代码所在的目录 globalConfig.setOutputDir(System.getProperty("user.dir" + "/src/main/java/com/lcj/codeGenerator"); globalConfig.setOpen(false); //设置作者 globalConfig.setAuthor("lichuanjiang"); //设置是否覆盖原始生成的文件 globalConfig.setFileOverride(true); //设置数据层接口名,%s 为占位符,指代模块名称 globalConfig.setMapperName("%sDao"); //设置Id生成策略 globalConfig.setIdType(IdType.ASSIGN_ID); autoGenerator.setGlobalConfig(globalConfig); //4.设置包名相关配置 PackageConfig packageInfo = new PackageConfig(); //设置生成的包名,与代码所在位置不冲突,二者叠加组成完整路径 packageInfo.setParent("com.lcj"); //设置实体类包名 packageInfo.setEntity("domain"); packageInfo.setMapper("dao"); //设置数据层包名 autoGenerator.setPackageInfo(packageInfo); //5.策略设置 StrategyConfig strategyConfig = new StrategyConfig(); //设置当前需要生成的表名,参数为可变参数,不写则生成整个数据库的表代码 strategyConfig.setInclude("user"); // 设置数据表的前缀名称,块名 = 数据库表名 _ 前名,如果有该前缀,生成代码时会去去除 strategyConfig.setTablePrefix("tbl_"); // 设置是否启用Rest风格 strategyConfig.setRestControllerStyle(true); // 设置乐观锁字段名 strategyConfig.setVersionFieldName("version"); // 设置逻辑删除字段名 strategyConfig.setLogicDeleteFieldName("deleted"); // 设置是否启用Lombok strategyConfig.setEntityLombokModel(true); autoGenerator.setStrategy(strategyConfig); //6.执行生成操作 autoGenerator.execute(); } }
本文作者:lichuanjiang,转载请注明原文链接:https://www.cnblogs.com/lichuanjiang/p/16916689.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了