SpringBoot3.2.2整合MyBatis Plus3.5.5的詳細(xì)過程
1.前置條件
已經(jīng)初始化好一個spring boot項目且版本為3X,項目可正常啟動
2.導(dǎo)坐標(biāo)
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.5</version> <exclusions> <exclusion> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>3.0.3</version> </dependency>
為何要排除掉mybatis plus整合好的mybatis依賴單獨引入一個?
Spring Boot 3.2.2整合MyBatis-Plus 3.5.5依賴不兼容問題SpringBoot3.2.2整合MyBatis-Plus3.5.5依賴不兼容的問題解決_java_腳本之家 (jb51.net)
3.配置數(shù)據(jù)源
application.yml:
spring: datasource: url: jdbc:mysql://localhost:3306/test username: root password: 123456
4.配置mapper掃描路徑
在啟動類添加@MapperScan("com.mijiu.mapper")注解指定mapper文件夾
如果不加該注解則要在每個mapper接口添加@Mapper注解
此時可以成功啟動項目
看到MyBatis Plus的banner說明到這里整合好了。
5.MyBatis Plus代碼生成器整合
官方文檔:https://baomidou.com/pages/779a6e/
5.1.導(dǎo)坐標(biāo)
第一個依賴是代碼生成器
第二個是代碼生成器所依賴代碼生成模板velocity,當(dāng)然不止這一個模板具體參閱官網(wǎng)
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.5.5</version> </dependency> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.3</version> </dependency>
5.2.編寫代碼生成邏輯
這里我寫好demo了,需要修改的地方已經(jīng)標(biāo)記//TODO注釋了
如果你的目錄結(jié)構(gòu)同作者類似,cv下面的demo修改一下//TODO標(biāo)注的配置運行即可
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.generator.FastAutoGenerator; import java.util.*; /** * @author mijiupro */ public class CodeGenerator { public static void main(String[] args) { getCode(); } public static void getCode() { //TODO 修改為自己的數(shù)據(jù)庫信息 String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai"; String username = "root"; String password = "123456"; //TODO 修改為自己的表名 List<String> tables = List.of("user");//需要生成對應(yīng)代碼的表名的集合 FastAutoGenerator.create(url, username, password) //全局配置---------------------------------------------------------------------------------------- .globalConfig(builder -> { builder .author("蒾酒")//TODO 修改為自己名稱 .outputDir(System.getProperty("user.dir") + "\\src\\main\\java")// 輸出路徑(寫到j(luò)ava目錄) // .enableSwagger() //開啟swagger,會自動添加swagger相關(guān)注解 .commentDate("yyyy-MM-dd");//日期格式 }) //包名配置-------------------------------------------------------------------------------------------- .packageConfig(builder -> builder.parent("com.mijiu")//TODO 修改為自己項目的路徑 // .moduleName("practice")//模塊名,設(shè)置該項會在輸出路徑上增加一層模塊名目錄 .entity("entity") .service("service") .serviceImpl("service.impl") .controller("controller") .mapper("mapper") .xml("mapper/xml") ) //策略配置----------------------------------------------------------------------------------------- .strategyConfig(builder -> { builder .addInclude(tables)// 需要生成代碼對應(yīng)的表,若需要生成全部表則注釋該行解放下一行 // .addInclude("all")//生成全部表 // .addTablePrefix("p_")//表前綴過濾,例如“p_”開頭的表不會生成對應(yīng)代碼 //實體策略配置 .entityBuilder() .enableFileOverride()// TODO 開啟覆蓋已生成的entity文件,關(guān)閉則注釋本行 .enableLombok()// 自動添加lombok注解@Getter @Setter .logicDeleteColumnName("deleted")// 指定邏輯刪除字段名自動為其添加邏輯刪除字段注解 .enableTableFieldAnnotation()//啟用表字段注解@TableField //Mapper策略配置 .mapperBuilder() .enableBaseResultMap() // 生成通用的resultMap .superClass(BaseMapper.class) .formatMapperFileName("%sMapper")//mapper文件后綴,如UserMapper // .enableFileOverride()// TODO 開啟覆蓋已生成的mapper文件,關(guān)閉則注釋本行 .formatXmlFileName("%sMapper")//xml文件后綴,如UserMapper.xml //Service策略配置 .serviceBuilder() // .enableFileOverride()//TODO 開啟覆蓋已生成的service文件,關(guān)閉則注釋本行 .formatServiceFileName("%sService") .formatServiceImplFileName("%sServiceImpl") //Controller策略配置 .controllerBuilder() .enableHyphenStyle() // 映射路徑使用連字符格式 .formatFileName("%sController") // .enableFileOverride()// TODO 開啟覆蓋已生成的controller文件,關(guān)閉則注釋本行 .enableRestStyle();//啟用rest風(fēng)格自動添加@RestController }).execute(); } }
運行即可。
以上就是SpringBoot3.2.2整合MyBatis Plus3.5.5的詳細(xì)過程的詳細(xì)內(nèi)容,更多關(guān)于SpringBoot3.2.2整合MyBatis Plus3.5.5的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Spring Cloud Alibaba 本地調(diào)試介紹及方案設(shè)計
為了解決 本地調(diào)試 的問題,本文實現(xiàn)了一種簡單實用的策略,可以通過 Nacos 動態(tài)配置服務(wù)路由,還可以基于用戶,部門,組織等級別配置服務(wù)路由,實現(xiàn) 本地調(diào)試 的同時,實際上也實現(xiàn) 灰度發(fā)布,感興趣的朋友跟隨小編一起看看吧2021-07-07java學(xué)生管理系統(tǒng)界面簡單實現(xiàn)(全)
這篇文章主要為大家詳細(xì)介紹了java學(xué)生管理系統(tǒng)界面的簡單實現(xiàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01三種SpringBoot中實現(xiàn)異步調(diào)用的方法總結(jié)
Spring Boot 提供了多種方式來實現(xiàn)異步任務(wù),這篇文章主要為大家介紹了常用的三種實現(xiàn)方式,文中的示例代碼講解詳細(xì),需要的可以參考一下2023-05-05使用SpringBoot發(fā)送郵箱驗證碼的簡單實現(xiàn)
這篇文章主要介紹了使用SpringBoot發(fā)送郵箱驗證碼的簡單實現(xiàn),咱們今天來講使用QQ郵箱來發(fā)送和接收驗證碼,首先來介紹一下它在SpringBoot項目中的具體應(yīng)用,需要的朋友可以參考下2023-04-04