五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Spring Boot整合MyBatis-Plus框架快速上手

2023-11-01 15:44 作者:袁庭新  | 我要投稿

最開始,我們要在Java中使用數(shù)據(jù)庫時,需要使用JDBC,創(chuàng)建Connection、ResultSet等,然后我們又對JDBC的操作進(jìn)行了封裝,創(chuàng)建了許多類似于DBUtil等工具類。再慢慢的,出現(xiàn)了一系列持久層的框架:Hibernate、JPA和MyBatis等。

其實(shí)利用MyBatis 來進(jìn)行持久層的開發(fā)已經(jīng)大大減少了工作人員的工作量了,但它的使用還是需要一定的門檻的。Mybatis-Plus的出現(xiàn),進(jìn)一步降低了這道檻。那我們今天就來看看,Mybatis-Plus到底是如何進(jìn)一步實(shí)現(xiàn)MyBatis的增強(qiáng)的。

1.MyBatis-Plus簡介

MyBatis-Plus官網(wǎng)地址:

MyBatis-Plus(簡稱MP)是一個MyBatis的增強(qiáng)工具,在MyBatis的基礎(chǔ)上只做增強(qiáng)不做改變,為簡化開發(fā)、提高效率而生。MP的愿景是成為MyBatis最好的搭檔,就像魂斗羅中的1P、2P,基友搭配,效率翻倍。

1.1?MyBatis-Plus特性

  • 無侵入:只做增強(qiáng)不做改變,引入它不會對現(xiàn)有工程產(chǎn)生影響,如絲般順滑。

  • 損耗?。簡蛹磿詣幼⑷牖綜URD,性能基本無損耗,直接面向?qū)ο蟛僮鳌?/p>

  • 強(qiáng)大的CRUD操作:內(nèi)置通用Mapper、通用Service,僅僅通過少量配置即可實(shí)現(xiàn)單表大部分CRUD操作,更有強(qiáng)大的條件構(gòu)造器,滿足各類使用需求。

  • 支持Lambda形式調(diào)用:通過Lambda表達(dá)式,方便的編寫各類查詢條件,無需再擔(dān)心字段寫錯。

  • 支持主鍵自動生成:支持多達(dá)4種主鍵策略(內(nèi)含分布式唯一ID生成器--Sequence),可自由配置,完美解決主鍵問題。

  • 支持ActiveRecord模式:支持ActiveRecord形式調(diào)用,實(shí)體類只需繼承Model類即可進(jìn)行強(qiáng)大的CRUD操作。

  • 支持自定義全局通用操作:支持全局通用方法注入(Write once, use anywhere)。

  • 內(nèi)置代碼生成器:采用代碼或者M(jìn)aven插件可快速生成Mapper、Model、Service、Controller層代碼,支持模板引擎,更有超多自定義配置等您來使用。

  • 內(nèi)置分頁插件:基于MyBatis物理分頁,開發(fā)者無需關(guān)心具體操作,配置好插件之后,寫分頁等同于普通List查詢。

  • 分頁插件支持多種數(shù)據(jù)庫:支持MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer等多種數(shù)據(jù)庫。

  • 內(nèi)置性能分析插件:可輸出SQL語句以及其執(zhí)行時間,建議開發(fā)測試時啟用該功能,能快速揪出慢查詢。

  • 內(nèi)置全局?jǐn)r截插件:提供全表delete、update操作智能分析阻斷,也可自定義攔截規(guī)則,預(yù)防誤操作。

1.2?支持?jǐn)?shù)據(jù)庫

任何能使用MyBatis進(jìn)行CRUD,并且支持標(biāo)準(zhǔn)SQL的數(shù)據(jù)庫,具體支持情況如下:

  • MySQL,Oracle,DB2,H2,HSQL,SQLite,PostgreSQL,SQLServer,Phoenix,Gauss ,ClickHouse,Sybase,OceanBase,F(xiàn)irebird,Cubrid,Goldilocks,csiidb。

  • 達(dá)夢數(shù)據(jù)庫,虛谷數(shù)據(jù)庫,人大金倉數(shù)據(jù)庫,南大通用(華庫)數(shù)據(jù)庫,南大通用數(shù)據(jù)庫,神通數(shù)據(jù)庫,瀚高數(shù)據(jù)庫。

2.使用SpringBoot整合MyBatis-Plus

2.1?MyBatis-Plus部署配置

1.引入依賴。在pom.xml文件中添加Mybatis-Plus依賴。

2.編寫實(shí)體類。在springbootdata數(shù)據(jù)庫中創(chuàng)建products商品信息表并插入數(shù)據(jù)。

3.在com.cy.domain包下創(chuàng)建Product實(shí)體類。

4.定義Mapper。在com.cy.mapper包下創(chuàng)建ProductMapper接口并繼承BaseMapper接口。

MyBatis-Plus的Mapper層接口需要配置掃描,配置方式有兩種:

  1. 直接在Mapper層使用@Mapper注解修飾Mapper接口。

  2. 在項(xiàng)目的啟動類上添加@MapperScan("com.cy.mapper")包掃描。

5.配置properties。在application.properties配置文件中將原有的MyBatis配置刪除,改寫為MyBatis-Plus的配置。

說明:MyBatis-Plus默認(rèn)開啟了駝峰命名匹配映射。

2.2?MyBatis-Plus增刪改查操作

1.新增數(shù)據(jù)操作。在com.cy測試包下編寫MyBatisPlusTests測試類,并添加插入數(shù)據(jù)操作的測試方法。

2.刪除數(shù)據(jù)操作。

3.修改數(shù)據(jù)操。

2.3?查詢數(shù)據(jù)操作

1.條件查詢。根據(jù)指定的限定條件進(jìn)行數(shù)據(jù)查詢操作。

2.分頁查詢。進(jìn)行單表的條件查詢并實(shí)現(xiàn)分頁。第一步先配置分頁插件。Mybatis-Plus框架是通過攔截器實(shí)現(xiàn)分頁的。

3.第二步在MyBatisPlusTests類中添加單表?xiàng)l件分頁查詢的測試方法。

3.MyBatis-Plus復(fù)雜查詢

3.1?添加查詢

MetaObjectHandler接口是Mybatis-Plus為我們提供的的一個擴(kuò)展接口,我們可以利用這個接口在我們插入或者更新數(shù)據(jù)的時候,為一些字段指定默認(rèn)值。

在實(shí)體類中添加@TableField注解。

  • FieldFill.INSERT:表示只是插入時生效。

  • FieldFill.INSERT_UPDATE:表示插入和更新時生效。

在項(xiàng)目的com.cy.config包下創(chuàng)建MyMetaObjectHandler類實(shí)現(xiàn)MetaObjectHandler接口,并添加@Component注解。

然后在MyBatisPlusTests測試類中添加測試方法。

3.2?自定義查詢

通過LambdaUpdateChainWrapper類和LambdaQueryChainWrapper類(Lambda更新鏈包裝器和Lambda查詢鏈包裝器)實(shí)現(xiàn)自定義條件查詢。

現(xiàn)在你知道在SpringBoot中怎么整合Mybatis-Plus了嗎?如果你還有其他問題,可以在評論區(qū)留言哦。關(guān)注「袁庭新」公眾號,干貨天天都不斷。


Spring Boot整合MyBatis-Plus框架快速上手的評論 (共 條)

分享到微博請遵守國家法律
西华县| 信宜市| 威宁| 浏阳市| 阿克陶县| 陵川县| 公安县| 达州市| 贺兰县| 健康| 赤城县| 东海县| 修武县| 商丘市| 呈贡县| 始兴县| 新蔡县| 友谊县| 陇南市| 武冈市| 抚顺市| 米泉市| 确山县| 新丰县| 陆良县| 嘉善县| 门源| 永城市| 株洲县| 资兴市| 方山县| 勐海县| 龙江县| 扎兰屯市| 普兰店市| 六枝特区| 桓台县| 铜梁县| 报价| 旌德县| 县级市|