构建项目和实现代码生成的Java Fluent Mybatis方法
来源:亿速云
时间:2024-02-05 17:25:54 247浏览 收藏
最近发现不少小伙伴都对文章很感兴趣,所以今天继续给大家介绍文章相关的知识,本文《构建项目和实现代码生成的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中,找到报错包位置中的编译文件。
之前报错的类已经不再报错了。完美。
以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。
声明:本文转载于:亿速云 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
最新阅读
更多>
-
230 收藏
-
266 收藏
-
487 收藏
-
289 收藏
-
115 收藏
-
440 收藏
-
231 收藏
-
213 收藏
-
348 收藏
-
381 收藏
-
405 收藏
-
169 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习