本想利用代码生成器减少一些重复的繁琐操作,但是整合的时候遇到了下面的问题:
版本爆红了,看字面意思是这版本选用最近的版本。
原因
仔细检查一下项目下的依赖包,我发现mybatis-plus-generator
的包没有导进来
后来查阅了一些资料,依赖坐标要如下写法
<!-- 代码生成器-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.31</version>
</dependency>
再检查一下项目的依赖包,发现需要的包都导进来了。
生成代码操作
可以自己创建一个test
测试类执行一下下面的这个方法就可以了
注意
:
- 指定的输出目录(或mapperXml生成路径同)是全路径,即在你电脑的哪个盘哪个文件夹要指明清楚
- 细致的可以看代码对应的注释
private void generate() {
FastAutoGenerator.create("jdbc:mysql://localhost:3306/emsystem?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai", "root", "root")
.globalConfig(builder -> {
builder.outputDir("G:\\我的超级文库\\毕业设计\\程序-后端\\EMSystem\\src\\main\\java"); // 指定输出目录
})
.packageConfig(builder -> {
builder.parent("com.lys.emsystem") // 设置父包名
.moduleName("") // 设置父包模块名
.pathInfo(Collections.singletonMap(OutputFile.mapperXml, "G:\\我的超级文库\\毕业设计\\程序-后端\\EMSystem\\src\\main\\resources\\mapper")); // 设置mapperXml生成路径
})
.strategyConfig(builder -> {
builder.entityBuilder().enableLombok();
builder.mapperBuilder().enableMapperAnnotation().build();
builder.controllerBuilder().enableHyphenStyle() // 开启驼峰转连字符
.enableRestStyle(); // 开启生成@RestController 控制器
builder.addInclude("tb_intent") // 设置需要生成的表名
.addTablePrefix("tb_"); // 设置过滤表前缀
})
.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
.execute();
}
效果:
上面的代码要是执行成功的话,就能在项目下自动生成某个表对应的model
,dao
,service
,mapper.xml
,controller
了,这样就能大大提高项目开发效率了。