依赖
<!-- Spring Boot Starter for MyBatis -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
踩坑点
- mybatis-plus-generator和mybatis-plus-boot-starter版本不一致
- 老代码生成器适用于 3.5.1 以下版本,如果您用的是 3.5.1 以上的版本,代码生成器写法不一样
- templateEngine(new FreemarkerTemplateEngine()) 这串代码是设置模板引擎,如果你的依赖和引擎不一致就会报错。比如依赖了velocity模板引擎,但是配置的FreemarkerTemplateEngine就会导致 Caused by: java.lang.ClassNotFoundException: freemarker.template.Configuration 出现类无法找到问题
FreemarkerTemplateEngine对应的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
- 注意点remarks=true&useInformationSchema=true需要再jdbc的url上加上,会生成注释代码
FastAutoGenerator.create(
"jdbc:mysql://127.0.0.1:3306/license-query?remarks=true&useInformationSchema=true&serverTimezone=GMT%2B8",
"root",
"123"
)
.globalConfig(builder -> builder
.author("tangxiang")
.outputDir(Paths.get(System.getProperty("user.dir")) + "/src/main/java")
.commentDate("yyyy-MM-dd")
)
.packageConfig(builder -> builder
.parent("com.tsingshan.license.query")
.entity("entity")
.mapper("mapper")
.service("service")
.serviceImpl("service.impl")
.xml("mapper.xml")
)
.strategyConfig(builder -> builder
.entityBuilder()
.enableLombok()
)
.templateEngine(new FreemarkerTemplateEngine())
.execute();