欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于Mybatis與JPA的優(yōu)缺點說明

 更新時間:2022年06月10日 10:08:32   作者:春風(fēng)化作秋雨  
這篇文章主要介紹了關(guān)于Mybatis與JPA的優(yōu)缺點說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Mybatis與JPA的優(yōu)缺點

JPA java持久層API

可理解為一種規(guī)范,Hibernate就是其具體一個實現(xiàn)。它的實現(xiàn)應(yīng)用是Spring DataJpa,Spring提供了一套簡化開發(fā)框架,按照約定好的方法命名規(guī)則,編寫dao層接口,即可在不編寫實現(xiàn)情況下執(zhí)行數(shù)據(jù)庫操作,還提供了除CRUD以外的功能,比如分頁、排序、復(fù)雜查詢等。SpringDataJpa可以理解為對JPA的再次封裝,底層仍舊是Hibernate。

JPA優(yōu)勢

1、JPA可移植性好,支持Hibernate方言。

2、提供單表CRUD方法,減少sql語句的編寫,開發(fā)效率高,。

3、面向?qū)ο箝_發(fā)思想,對象化程度更高。

Mybatis優(yōu)點

1、自己編寫SQL語句,更靈活、性能較高。

2、SQL語句與代碼相互分離,易于閱讀和維護(hù)。

3、提供XML標(biāo)簽#{}、${}、 <if test=""></if>等,支持拼寫動態(tài)SQL語句。

Mybatis缺點

1、單表的CRUD操作需要編寫SQL語句,庫表字段的新增修改刪除,都要重新維護(hù)。

2、XML中有大量SQL需維護(hù);參數(shù)變更來回切換修改。

3、Mybatis功能有限。 

JPA與Mybatis的區(qū)別

其實JPA和mybatis大體上沒什么區(qū)別,架構(gòu)上很相似,mybatis就是mapper層,JPA就是repository層,其他都一樣的

JPA就是把mapper層的接口換成repository的接口

那么接口具體長什么樣呢?

mapper層

自己寫sql語句

JPA的repository

沒有具體sql語句,看起來沒有實現(xiàn)一樣,但其實是遵循規(guī)則的實現(xiàn),你只要寫 findByXxx(Xxx xx) 就能根據(jù)某個鍵自動實現(xiàn)數(shù)據(jù)庫查詢,當(dāng)然其他的語句也是可以實現(xiàn)的。

如果你覺得不靈活,也可以自己寫,例如

最后的nativeQuery一定加上,不然會報錯。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java之String.format()方法案例講解

    Java之String.format()方法案例講解

    這篇文章主要介紹了Java之String.format()方法案例講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Servlet實現(xiàn)文件的上傳與下載

    Servlet實現(xiàn)文件的上傳與下載

    這篇文章主要為大家詳細(xì)介紹了Servlet實現(xiàn)文件的上傳與下載,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • Java獲取隨機(jī)數(shù)的n種方法

    Java獲取隨機(jī)數(shù)的n種方法

    項目中,我們常常會用到隨機(jī)數(shù),本文主要介紹了Java獲取隨機(jī)數(shù)的n種方法,具有一定的參考價值,感興趣的可以了解一下
    2023-11-11
  • 基于@RestControllerAdvice與@ControllerAdvice的區(qū)別說明

    基于@RestControllerAdvice與@ControllerAdvice的區(qū)別說明

    這篇文章主要介紹了@RestControllerAdvice與@ControllerAdvice的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java:

    Java:"失效"的private修飾符

    本文主要介紹Java 失效的private修飾符,這里整理了相關(guān)資料說明private 修飾符的作用,如何使用并與C++ 做比較,有興趣的小伙伴可以參考下
    2016-08-08
  • Java 跨域問題的處理方式

    Java 跨域問題的處理方式

    這篇文章主要介紹了Java 跨域問題的處理方式,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-11-11
  • Java 使用openoffice進(jìn)行word轉(zhuǎn)換為pdf的方法步驟

    Java 使用openoffice進(jìn)行word轉(zhuǎn)換為pdf的方法步驟

    這篇文章主要介紹了Java 使用openoffice進(jìn)行word轉(zhuǎn)換為pdf的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Java基礎(chǔ)之Stream流原理與用法詳解

    Java基礎(chǔ)之Stream流原理與用法詳解

    從Java1.8開始提出了Stream流的概念,側(cè)重對于源數(shù)據(jù)計算能力的封裝,并且支持序列與并行兩種操作方式。本文就來為大家詳細(xì)講講Stream流原理與用法
    2022-08-08
  • Struts2截取字符串代碼介紹

    Struts2截取字符串代碼介紹

    這篇文章主要介紹了Struts2截取字符串代碼介紹,介紹了基本的截取方法,以及截取帶html標(biāo)簽字符串的方法,需要的朋友可以了解下。
    2017-09-09
  • Java通過調(diào)用C/C++實現(xiàn)的DLL動態(tài)庫——JNI的方法

    Java通過調(diào)用C/C++實現(xiàn)的DLL動態(tài)庫——JNI的方法

    這篇文章主要介紹了Java通過調(diào)用C/C++實現(xiàn)的DLL動態(tài)庫——JNI的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2018-01-01

最新評論