這篇文章主要介紹了Java Fluent Mybatis怎么構建項目與實現(xiàn)代碼生成的相關知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Java Fluent Mybatis怎么構建項目與實現(xiàn)代碼生成文章都會有所收獲,下面我們一起來看看吧。
站在用戶的角度思考問題,與客戶深入溝通,找到信陽網(wǎng)站設計與信陽網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:做網(wǎng)站、網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、國際域名空間、網(wǎng)絡空間、企業(yè)郵箱。業(yè)務覆蓋信陽地區(qū)。
看一下官方給出的特性圖
給出對幾個特性乍一看還是很全面的,其中比較吸引我的是兩點。
1、從圖中給出的語法,和sql十分相近,不仔細看還以為是直接sql語句扔了上來??瓷先ゾ捅容^實用。
2、No xml&mapper,雖然mybatis-plus已經(jīng)做到實用 IService接口實現(xiàn)大部分的sql操作
springboot搭建一項目的過程就不過多贅述了,這里說下我實用的springboot版本
org.springframework.boot spring-boot-starter-parent 2.5.5
代碼結構如下:
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
在數(shù)據(jù)庫創(chuàng)建一張測試表,表比較簡單,先試試看。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 '創(chuàng)建時間', `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 { // 數(shù)據(jù)源 url static final String url = "jdbc:mysql://192.168.0.16:3306/test?useUnicode=true&characterEncoding=utf8"; // 數(shù)據(jù)庫用戶名 static final String username = "root"; // 數(shù)據(jù)庫密碼 static final String password = "123456"; @Test public void generate() throws Exception { // 引用配置類,build方法允許有多個配置類 FileGenerator.build(Empty.class); } @Tables( // 設置數(shù)據(jù)庫連接信息 url = url, username = username, password = password, // 設置entity類生成src目錄, 相對于 user.dir srcDir = "src/main/java", // 設置entity類的package值 basePack = "com.hy.fmp.fluent", // 設置dao接口和實現(xiàn)的src目錄, 相對于 user.dir daoDir = "src/main/java", // 設置哪些表要生成Entity文件 tables = {@Table(value = {"test_fluent_mybatis"})}) static class Empty { // 類名隨便取, 只是配置定義的一個載體 } }
執(zhí)行代碼生成工具,看看都生成了些什么。
可以看到生成的包如下。
這里有個坑,看下面的截圖
其實官方給了解決方法,只是沒有對此說明。
簡而言之就是你需要使用maven編譯一下,所以我們compile一下。
編譯結束后我們可以在target中,找到報錯包位置中的編譯文件。
之前報錯的類已經(jīng)不再報錯了。完美。
關于“Java Fluent Mybatis怎么構建項目與實現(xiàn)代碼生成”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“Java Fluent Mybatis怎么構建項目與實現(xiàn)代碼生成”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。