Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查

总是喜欢去关注更多的新框架,发现了一个基本上不用写mapper和xml的框架。让我们来研究一下这个框架吧。
1. 新建Spring Boot项目
1.1 pom.xml配置
1.8 1.6.13 org.springframework.boot spring-boot-starter-web mysql mysql-connector-java runtime org.projectlombok lombok true org.springframework.boot spring-boot-starter-test test com.github.atool fluent-mybatis ${fluent-mybatis.version} com.github.atool fluent-mybatis-processor ${fluent-mybatis.version} org.mybatis.spring.boot mybatis-spring-boot-starter 2.2.0

我们这里引入了fluent-mybatis-processor就是想自动生成代码,尽量减少我们自己写代码。
1.2 application.yml配置
server: port: 8080 # 端口号 spring: datasource: # 数据库参数配置 driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://IP:3306/数据库名称?useUnicode=true&characterEncoding=utf8 username: 用户名 password: 密码

1.3 EntityGeneratorTests.java 自动代码生成 这个我尝试过在非Test里面用main里面运行,结果总是失败,有可以运行的请告诉我哈!
@SpringBootTest public class EntityGeneratorTests {// 数据源 url static final String url = "jdbc:mysql://IP:3306/数据库名称?useUnicode=true&characterEncoding=utf8"; // 数据库用户名 static final String username = "用户名"; // 数据库密码 static final String password = "密码"; @Test public void generate() { // 引用配置类,build方法允许有多个配置类 FileGenerator.build(Empty.class); }@Tables( // 设置数据库连接信息 url = url, username = username, password = password, // 设置entity类生成src目录, 相对于 user.dir srcDir = "src/main/java", // 设置entity类的package值 basePack = "xyz.zhouzhaodong.fluentmybatis", // 设置dao接口和实现的src目录, 相对于 user.dir daoDir = "src/main/java", // 设置哪些表要生成Entity文件 tables = {@Table(value = https://www.it610.com/article/{"user"})} ) static class Empty { //类名随便取, 只是配置定义的一个载体 }}

运行后生成如下三个文件:
Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

1.4 生成代码后编译会在target目录生成代码 Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

运行后生成的代码如下:
Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

1.5 启动类配置 @MapperScan @MapperScan地址为上面target目录下的mapper
可参考我的:
Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

1.6 新建UserController测试 可以参考官方文档进行研究,我这里只是简单的进行逻辑的实现。
文档地址为:
https://gitee.com/fluent-myba...
@RestController @RequestMapping("/user") public class UserController {@Resource UserDao userDao; @Resource UserMapper userMapper; /** * 根据ID查询数据1 * @param id * @return */ @GetMapping("/getByIdOne") public UserEntity getByIdOne(Integer id){ return userDao.selectById(id); }/** * 根据ID查询数据2 * @param id * @return */ @GetMapping("/getByIdTwo") public UserEntity getByIdTwo(Integer id){ UserQuery query = new UserQuery().where.id().eq(id).end(); return userMapper.findOne(query); }/** * 根据ID删除 * @param id */ @GetMapping("/deleteById") public void deleteById(Integer id){ userDao.deleteById(id); }/** * 根据ID进行更新 * @param userEntity * @return */ @PostMapping("/updateById") public UserEntity updateById(@RequestBody UserEntity userEntity){ boolean b = userDao.updateById(userEntity); if (b){ return userDao.selectById(userEntity.getId()); } return null; }/** * 新增 * @param userEntity * @return */ @PostMapping("/insert") public Integer insert(@RequestBody UserEntity userEntity){ return userDao.save(userEntity); } }

接下来进行测试:
1.6.1 getByIdOne Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

1.6.2 getByTwo Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

1.6.3 deleteById Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

1.6.4 insert Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

1.6.5 updateById Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查
文章图片

简单测试通过!
源代码地址:
https://gitee.com/zhouzhaodon...
个人博客地址:
【Spring|Spring Boot 简单整合 fluent-mybatis 实现数据的增删改查】http://www.zhouzhaodong.xyz/

    推荐阅读