2023-06-25 01:13:00 來源 : 城市網(wǎng)
1、一、mybatis的工作原理:MyBatis 是支持普通 SQL查詢,存儲過程和高級映射的優(yōu)秀持久層框架。
【資料圖】
2、MyBatis 消除了幾乎所有的JDBC代碼和參數(shù)的手工設(shè)置以及結(jié)果集的檢索。
3、MyBatis使用簡單的 XML或注解用于配置和原始映射,將接口和 Java 的POJOs(Plain Ordinary Java Objects,普通的 Java對象)映射成數(shù)據(jù)庫中的記錄。
4、每個MyBatis應(yīng)用程序主要都是使用SqlSessionFactory實(shí)例的,一個SqlSessionFactory實(shí)例可以通過SqlSessionFactoryBuilder獲得。
5、用xml文件構(gòu)建SqlSessionFactory實(shí)例是非常簡單的事情。
6、推薦在這個配置中使用類路徑資源,但可以使用任何Reader實(shí)例,包括用文件路徑或file://開頭的url創(chuàng)建的實(shí)例。
7、MyBatis有一個實(shí)用類----Resources,它有很多方法,可以方便地從類路徑及其它位置加載資源。
8、二、使用mybatis的原因:因?yàn)閙ybatis具有許多的優(yōu)點(diǎn),具體如下:簡單易學(xué):本身就很小且簡單。
9、沒有任何第三方依賴,最簡單安裝只要兩個jar文件+配置幾個sql映射文件易于學(xué)習(xí),易于使用,通過文檔和源代碼,可以比較完全的掌握它的設(shè)計(jì)思路和實(shí)現(xiàn)。
10、2、靈活:mybatis不會對應(yīng)用程序或者數(shù)據(jù)庫的現(xiàn)有設(shè)計(jì)強(qiáng)加任何影響。
11、 sql寫在xml里,便于統(tǒng)一管理和優(yōu)化。
12、通過sql語句可以滿足操作數(shù)據(jù)庫的所有需求。
13、3、解除sql與程序代碼的耦合:通過提供DAO層,將業(yè)務(wù)邏輯和數(shù)據(jù)訪問邏輯分離,使系統(tǒng)的設(shè)計(jì)更清晰,更易維護(hù),更易單元測試。
14、sql和代碼的分離,提高了可維護(hù)性。
15、4、提供映射標(biāo)簽,支持對象與數(shù)據(jù)庫的orm字段關(guān)系映射。
16、5、提供對象關(guān)系映射標(biāo)簽,支持對象關(guān)系組建維護(hù)。
17、6、提供xml標(biāo)簽,支持編寫動態(tài)sql。
18、擴(kuò)展資料:mybatis的功能構(gòu)架:API接口層:提供給外部使用的接口API,開發(fā)人員通過這些本地API來操縱數(shù)據(jù)庫。
19、接口層一接收到調(diào)用請求就會調(diào)用數(shù)據(jù)處理層來完成具體的數(shù)據(jù)處理。
20、2、數(shù)據(jù)處理層:負(fù)責(zé)具體的SQL查找、SQL解析、SQL執(zhí)行和執(zhí)行結(jié)果映射處理等。
21、它主要的目的是根據(jù)調(diào)用的請求完成一次數(shù)據(jù)庫操作。
22、3、基礎(chǔ)支撐層:負(fù)責(zé)最基礎(chǔ)的功能支撐,包括連接管理、事務(wù)管理、配置加載和緩存處理,這些都是共用的東西,將他們抽取出來作為最基礎(chǔ)的組件。
23、為上層的數(shù)據(jù)處理層提供最基礎(chǔ)的支撐。
24、參考資料來源:百度百科-MyBatis參考資料來源:百度百科-MyBatis從入門到精通。
相信通過mybatis原理這篇文章能幫到你,在和好朋友分享的時(shí)候,也歡迎感興趣小伙伴們一起來探討。
本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!