久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > MyBatis流行的原因?

MyBatis流行的原因?

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-11 19:42:33 1697024553

一、MyBatis流行的原因

1、容易上手,學(xué)習(xí)門檻低

mybatis它是一個(gè)優(yōu)異的開源持久層框架,mybatis之所以很流行,是因?yàn)閙ybatis很容易上手,開發(fā)速度很快,學(xué)習(xí)門檻很低,想要真正掌握myabatis也很容易,程序員就可以直接編寫原生的sql語句,我們可以自己控制sql語句的執(zhí)行性能。mybatis使用場(chǎng)景是對(duì)關(guān)系數(shù)據(jù)模型要求不高的軟件使用,比如電商網(wǎng)站軟件需要要求變化頻繁,如果需求變化就立馬要求輸出結(jié)果,這是使用mybatis就有好處了。

2、sql優(yōu)化性能好

mybatis在sql優(yōu)化性能方面比Hibernate高得多,Hibernate得查詢回將表中的所有字段都給你查出來,這樣就會(huì)影響性能的消耗,然后mybatis的sql語句程序員可以自己動(dòng)手編寫,可以按需求指定的字段進(jìn)行查詢,當(dāng)然Hibernate也可以自己編寫sql語句來指定查詢所需要的字段,這樣很顯然的不合理,相當(dāng)破壞了Hibernate開發(fā)的簡(jiǎn)潔性,所有mybatis越來越被大廠流行使用的原因。

3、查詢緩存特性強(qiáng)大

mybatis在緩存機(jī)制方面有一個(gè)很強(qiáng)的查詢緩存特性非常的強(qiáng)大,程序員可以非常方便的配置和定制,但是在使用過程中需要注意的是,假如你不能完全確定數(shù)據(jù)更新操作的范圍,就應(yīng)該避免使用Cache,不然的話可能出現(xiàn)系統(tǒng)的運(yùn)行帶來了一個(gè)很大的隱患,當(dāng)然使用過程中注意就可以。

二、Mybatis的功能架構(gòu)

1、API接口層

提供給外部使用的接口API,開發(fā)人員通過這些本地API來操縱數(shù)據(jù)庫。接口層一接收到調(diào)用請(qǐng)求就會(huì)調(diào)用數(shù)據(jù)處理層來完成具體的數(shù)據(jù)處理。接口是MyBatis提供給開發(fā)人員的一套API,通過SqlSession接口和Mapper接口,開發(fā)人員可以通知MyBatis框架調(diào)用哪一條SQL命令以及SQL命令關(guān)聯(lián)參數(shù)。

2、數(shù)據(jù)處理層

負(fù)責(zé)具體的SQL查找、SQL解析、SQL執(zhí)行和執(zhí)行結(jié)果映射處理等。它主要的目的是根據(jù)調(diào)用的請(qǐng)求完成一次數(shù)據(jù)庫操作。

MyBatis框架內(nèi)部的核心實(shí)現(xiàn),來完成對(duì)映射文件的解析與數(shù)據(jù)處理對(duì)Mapper.xml中的參數(shù)進(jìn)行參數(shù)解析與參數(shù)綁定——(ORM)對(duì)Mapper.xml中的SQL語句解析執(zhí)行SQL,調(diào)用底層JDBC進(jìn)行數(shù)據(jù)庫從操作(即支撐層)結(jié)果集映射解析與結(jié)果集映射處理

3、基礎(chǔ)支撐層

負(fù)責(zé)最基礎(chǔ)的功能支撐,包括連接管理、事務(wù)管理、配置加載和緩存處理,這些都是共用的東西,將他們抽取出來作為最基礎(chǔ)的組件。為上層的數(shù)據(jù)處理層提供最基礎(chǔ)的支撐。用來完成MyBatis與數(shù)據(jù)庫基本連接方式以及SQL命令與配置文件對(duì)應(yīng),主要負(fù)責(zé):

對(duì) MyBatis 與 數(shù)據(jù)庫連接方式 的管理MyBatis 對(duì)事務(wù)管理方式的統(tǒng)一處理配置文件加載(例如延遲加載)MyBatis查詢緩存的管理

延伸閱讀1:MyBatis概念

Mybatis是一個(gè)半ORM(對(duì)象關(guān)系映射)框架,底層封裝了JDBC,是程序員在開發(fā)時(shí)只需要關(guān)注SQL語句本身,不需要花費(fèi)精力去處理加載驅(qū)動(dòng)、創(chuàng)建連接、創(chuàng)建statement等繁雜的過程,使得程序員可以花更多的精力放到業(yè)務(wù)開發(fā)中。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
python的五個(gè)特點(diǎn)?

一、簡(jiǎn)潔易讀的語法Python以簡(jiǎn)潔易讀而著稱。它采用了一種簡(jiǎn)單而直觀的語法,使得代碼具有高度的可讀性,降低了學(xué)習(xí)和理解的難度。Python使用縮...詳情>>

2023-10-11 21:23:04
區(qū)塊鏈技術(shù)在醫(yī)療領(lǐng)域有沒有什么可以應(yīng)用的場(chǎng)景?

一、區(qū)塊鏈技術(shù)在醫(yī)療領(lǐng)域的應(yīng)用區(qū)塊鏈在醫(yī)療領(lǐng)域的應(yīng)用前景廣泛,國(guó)內(nèi)外各機(jī)構(gòu)都在積極探索區(qū)塊鏈在醫(yī)療領(lǐng)域的多方面應(yīng)用。主要應(yīng)用方向包括醫(yī)...詳情>>

2023-10-11 21:17:44
Java并發(fā)編程需要掌握什么?

一、Java并發(fā)編程需要掌握的內(nèi)容1、線程基礎(chǔ)知識(shí)了解線程的概念、生命周期和狀態(tài)轉(zhuǎn)換,以及如何創(chuàng)建和管理線程。熟悉Java中的Thread類和Runnabl...詳情>>

2023-10-11 21:08:03
WEB服務(wù)器是什么?

一、WEB服務(wù)器是什么WEB服務(wù)器是一種用于存儲(chǔ)、處理和提供Web內(nèi)容的軟件或硬件設(shè)備。它充當(dāng)了Web應(yīng)用程序和客戶端之間的中間層,負(fù)責(zé)接收來自客...詳情>>

2023-10-11 20:49:17
為什么要用Lambda表達(dá)式?

一、用Lambda表達(dá)式的原因Lambda表達(dá)式是一種匿名函數(shù),它在許多編程語言中得到了廣泛應(yīng)用,包括Java、Python、JavaScript等。1、簡(jiǎn)潔性Lambda...詳情>>

2023-10-11 20:31:47
快速通道