springboot开发教程-数据库集成mybaits-plus
参考网址:https://baomidou.com/
Spring Boot2
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.6</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.6</version>
</dependency>
在pom文件中加入以上配置
创建一个代码生成类,根据https://baomidou.com/guides/new-code-generator/
package com.tuoyue.jyzc;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
/**
* @Author zc
*/
public class CodeGenerator {
public static void main(String[] args){
FastAutoGenerator.create("jdbc:mysql://localhost:3306/springbootdb?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8", "root", "root")
.globalConfig(builder -> builder
.author("zhuc")
.outputDir("src/main/java")
.commentDate("yyyy-MM-dd")
)
.packageConfig(builder -> builder
.parent("com.tuoyue.jyzc")
.entity("entity")
.mapper("mapper")
.service("service")
.serviceImpl("service.impl")
.xml("mapper.xml")
.controller("controller")
)
.strategyConfig(builder ->
builder.addInclude("user") // 设置需要生成的表名
.addTablePrefix("t_", "c_") // 设置过滤表前缀
)
.templateEngine(new FreemarkerTemplateEngine())
.execute();
}
}
删除原有demo下的示例包
创建规范的几个包名
创建数据表
CREATE TABLE `user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, `age` int(11) DEFAULT NULL, `email` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4;
运行CodeGenerator提示报错
Exception in thread "main" java.lang.NoClassDefFoundError: freemarker/template/Configuration
需要加入freemarker类库
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
再运行CodeGenerator代码生成成功
可以看到已经生成了相关的类
再运行DemoApplication,这时候报错
No qualifying bean of type 'com.tuoyue.jyzc.mapper.UserMapper' available: expected at least 1 bean which qualifies as autowire candidate.
在运行类中增加一个MapperScan
增加后再运行成功
UserController中增加一个方法进行测试
浏览器打开http://127.0.0.1:8081/user/add
返回{"code":"0"},至此数据库集成 成功