最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

JPA java持久層API

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

JPA優(yōu)勢(shì)

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

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

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

Mybatis優(yōu)點(diǎn)

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

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

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

Mybatis缺點(diǎn)

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

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

3、Mybatis功能有限。 

JPA與Mybatis的區(qū)別

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

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

那么接口具體長(zhǎng)什么樣呢?

mapper層

自己寫sql語(yǔ)句

JPA的repository

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

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

最后的nativeQuery一定加上,不然會(huì)報(bào)錯(cuò)。

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

相關(guān)文章

  • Java中spring讀取配置文件的幾種方法示例

    Java中spring讀取配置文件的幾種方法示例

    本篇文章中主要介紹了Java中spring讀取配置文件的幾種方法示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • java中如何使用泛型方法比較大小

    java中如何使用泛型方法比較大小

    這篇文章主要介紹了java中如何使用泛型方法比較大小,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • idea打開運(yùn)行配置java?web項(xiàng)目的全過程

    idea打開運(yùn)行配置java?web項(xiàng)目的全過程

    這篇文章主要給大家介紹了關(guān)于idea打開運(yùn)行配置java?web項(xiàng)目的相關(guān)資料,有些時(shí)候我們用IDEA跑之前用eclipse中運(yùn)行的項(xiàng)目的時(shí)候,總是不止所措,要不就是只展示html,要不就是不能部署成功,需要的朋友可以參考下
    2023-08-08
  • Java Serializable和Parcelable詳解及實(shí)例代碼

    Java Serializable和Parcelable詳解及實(shí)例代碼

    這篇文章主要介紹了Java Serializable和Parcelable詳解,并附實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • springmvc @ResponseStatus和ResponseEntity的使用

    springmvc @ResponseStatus和ResponseEntity的使用

    這篇文章主要介紹了springmvc @ResponseStatus和ResponseEntity的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 關(guān)于Springboot日期時(shí)間格式化處理方式總結(jié)

    關(guān)于Springboot日期時(shí)間格式化處理方式總結(jié)

    這篇文章主要介紹了關(guān)于Springboot日期時(shí)間格式化處理方式總結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • java實(shí)現(xiàn)json字符串格式化處理的工具類

    java實(shí)現(xiàn)json字符串格式化處理的工具類

    這篇文章主要為大家詳細(xì)介紹了如何使用java實(shí)現(xiàn)json字符串格式化處理的工具類,文中的示例代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • 詳解Java阻塞隊(duì)列(BlockingQueue)的實(shí)現(xiàn)原理

    詳解Java阻塞隊(duì)列(BlockingQueue)的實(shí)現(xiàn)原理

    這篇文章主要介紹了詳解Java阻塞隊(duì)列(BlockingQueue)的實(shí)現(xiàn)原理,阻塞隊(duì)列是Java util.concurrent包下重要的數(shù)據(jù)結(jié)構(gòu),有興趣的可以了解一下
    2017-06-06
  • 基于java 線程的幾種狀態(tài)(詳解)

    基于java 線程的幾種狀態(tài)(詳解)

    下面小編就為大家?guī)硪黄趈ava 線程的幾種狀態(tài)(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就想給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • 聊聊@Autowired注解注入,寫接口名字還是實(shí)現(xiàn)類的名字

    聊聊@Autowired注解注入,寫接口名字還是實(shí)現(xiàn)類的名字

    這篇文章主要介紹了聊聊@Autowired注解注入,寫接口名字還是實(shí)現(xiàn)類的名字,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11

最新評(píng)論

安达市| 昌吉市| 来凤县| 大埔县| 锡林郭勒盟| 龙岩市| 克什克腾旗| 镇安县| 乳源| 秭归县| 丁青县| 牙克石市| 文安县| 福州市| 安图县| 三亚市| 广州市| 旬阳县| 永德县| 和政县| 两当县| 武功县| 龙口市| 兰考县| 泰宁县| 东乡族自治县| 济南市| 金寨县| 廊坊市| 陆河县| 松原市| 潼南县| 桓仁| 大新县| 三门县| 遂昌县| 台山市| 吴旗县| 育儿| 江都市| 桓仁|