这篇博文是我根据MybatisPlus官网进行更改之后的逆向工程代码,可动态生成entity(实体类)、mapper(数据库层)、controller(控制层)代码
public static void main(String[] args) {
// 1、创建代码生成器
AutoGenerator mpg = new AutoGenerator();
// 2、全局配置
// 全局配置
GlobalConfig gc = new GlobalConfig();
String projectPath = System.getProperty("user.dir");
System.out.println(projectPath);
//自己的模块名,子模块名,以及生成的源代码目录
gc.setOutputDir(projectPath+"\\service\\service_activity"+"/src/main/java");
gc.setServiceName("%sService"); //去掉Service接口的首字母I
//作者名称
gc.setAuthor("别会,会就是不问");
gc.setOpen(false);
mpg.setGlobalConfig(gc);
// 3、数据源配置
DataSourceConfig dsc = new DataSourceConfig();
//记得修改数据库
dsc.setUrl("jdbc:mysql://localhost:3306/ykt_activity");
//这里使用mysql8大版本
dsc.setDriverName("com.mysql.cj.jdbc.Driver");
dsc.setUsername("root");//用户名
dsc.setPassword("xxxx");//密码
dsc.setDbType(DbType.MYSQL);
mpg.setDataSource(dsc);
// 4、包配置
PackageConfig pc = new PackageConfig();
//
pc.setModuleName("activity"); //模块名
pc.setParent("com.zc.ykt");
pc.setController("controller");
pc.setEntity("entity");
pc.setService("service");
pc.setMapper("mapper");
mpg.setPackageInfo(pc);
// 5、策略配置
StrategyConfig strategy = new StrategyConfig();
//生成com.zc.ykt目的下一级目录 即com.zc.ykt.activity
strategy.setInclude("coupon_info");
strategy.setNaming(NamingStrategy.underline_to_camel);//数据库表映射到实体的命名策略
strategy.setColumnNaming(NamingStrategy.underline_to_camel);//数据库表字段映射到实体的命名策略
strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter链式操作
strategy.setRestControllerStyle(true); //restful api风格控制器
strategy.setControllerMappingHyphenStyle(true); //url中驼峰转连字符
mpg.setStrategy(strategy);
// 6、执行
mpg.execute();
}
之前忘了附带上依赖版本,这个问题也是我在过了一段时间再次使用的时候才发现,我他喵的依赖竟然忘记了,查阅了之后才知道,实在是大意,本来写这篇博文就是为了方便!😓现在就把依赖版本给大家
<!--mybatis-plus(springboot版)-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>
<!--mybatis-plus代码生成器-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.4.0</version>
</dependency>
<!-- velocity 模板引擎, Mybatis Plus 代码生成器需要 -->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.1</version>
</dependency>
在生成之前看一眼原本的目录
执行代码:
有以上结果说明生成完毕
再查看目录
说明生成完毕,可以使用了