千家信息网

Java Fluent Mybatis如何构建项目与实现代码生成

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍了Java Fluent Mybatis如何构建项目与实现代码生成,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。特性看
千家信息网最后更新 2025年11月07日Java Fluent Mybatis如何构建项目与实现代码生成

这篇文章主要介绍了Java Fluent Mybatis如何构建项目与实现代码生成,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

特性

看一下官方给出的特性图

给出对几个特性乍一看还是很全面的,其中比较吸引我的是两点。

1、从图中给出的语法,和sql十分相近,不仔细看还以为是直接sql语句扔了上来。看上去就比较实用。

2、No xml&mapper,虽然mybatis-plus已经做到实用 IService接口实现大部分的sql操作

项目搭建

springboot搭建一项目的过程就不过多赘述了,这里说下我实用的springboot版本

        org.springframework.boot        spring-boot-starter-parent        2.5.5             

代码结构如下:

maven依赖引入-fluent-mybatis

    1.8.7                com.github.atool        fluent-mybatis        ${fluent-mybatis.version}                    com.github.atool        fluent-mybatis-processor        provided        ${fluent-mybatis.version}    

完整maven依赖如下

    4.0.0            org.springframework.boot        spring-boot-starter-parent        2.5.5                 com.hy    fluent-mybatis-project    0.0.1-SNAPSHOT    fluent-mybatis-project    Demo project for Spring Boot            1.8        1.8.7                            org.springframework.boot            spring-boot-starter-web                             org.springframework.boot            spring-boot-devtools            runtime            true                            org.springframework.boot            spring-boot-configuration-processor            true                            org.projectlombok            lombok            true                            org.springframework.boot            spring-boot-starter-test            test                            org            jaudiotagger            2.0.1                            com.google.guava            guava            30.1.1-jre                            cn.hutool            hutool-all            5.5.2                                    com.github.atool            fluent-mybatis            ${fluent-mybatis.version}                                    com.github.atool            fluent-mybatis-processor            provided            ${fluent-mybatis.version}                            org.mybatis.spring.boot            mybatis-spring-boot-starter            2.2.0                             mysql            mysql-connector-java            runtime                                                     org.springframework.boot                spring-boot-maven-plugin                                                                                        org.projectlombok                            lombok                                                                                     

表构建

在数据库创建一张测试表,表比较简单,先试试看。sql如下:

CREATE TABLE `test_fluent_mybatis` (  `id` int NOT NULL AUTO_INCREMENT COMMENT '自增主键',  `name` varchar(255) DEFAULT NULL COMMENT '姓名',  `age` int DEFAULT NULL COMMENT '年龄',  `create_time` datetime DEFAULT NULL COMMENT '创建时间',  `del_flag` int DEFAULT NULL COMMENT '是否删除',  PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

代码生成工具类

注意:放到测试代码包中。结构如下图:

代码生成工具类代码,先按照官方给的简单样例来,如下:

package com.hy.fmp; import cn.org.atool.generator.FileGenerator;import cn.org.atool.generator.annotation.Table;import cn.org.atool.generator.annotation.Tables;import org.junit.jupiter.api.Test; public class EntityGeneratorDemo {  // 数据源 url  static final String url =      "jdbc:mysql://192.168.0.16:3306/test?useUnicode=true&characterEncoding=utf8";  // 数据库用户名  static final String username = "root";  // 数据库密码  static final String password = "123456";   @Test  public void generate() throws Exception {    // 引用配置类,build方法允许有多个配置类    FileGenerator.build(Empty.class);  }   @Tables(      // 设置数据库连接信息      url = url,      username = username,      password = password,      // 设置entity类生成src目录, 相对于 user.dir      srcDir = "src/main/java",      // 设置entity类的package值      basePack = "com.hy.fmp.fluent",      // 设置dao接口和实现的src目录, 相对于 user.dir      daoDir = "src/main/java",      // 设置哪些表要生成Entity文件      tables = {@Table(value = {"test_fluent_mybatis"})})  static class Empty { // 类名随便取, 只是配置定义的一个载体  }}

执行代码生成工具,看看都生成了些什么。

可以看到生成的包如下。

解决类找不到问题

这里有个坑,看下面的截图

其实官方给了解决方法,只是没有对此说明。

简而言之就是你需要使用maven编译一下,所以我们compile一下。

编译结束后我们可以在target中,找到报错包位置中的编译文件。

之前报错的类已经不再报错了。完美。

感谢你能够认真阅读完这篇文章,希望小编分享的"Java Fluent Mybatis如何构建项目与实现代码生成"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

0