日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Mybatis源码分析开篇

發布時間:2025/3/12 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mybatis源码分析开篇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Mybatis的由來

iBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,并且改名為MyBatis 。2013年11月遷移到Github。
iBATIS一詞來源于“internet”和“abatis”的組合,是一個基于Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAOs)

mybatis究竟是什么

其實Mybatis就是封裝了JDBC,讓JDBC的操作更加簡單,為什么這么說呢?我們來看下面的說明:
一次完整的JDBC操作數據庫包括以下步驟
1、 加載數據庫驅動
2、 創建并獲取數據庫鏈接
3、 創建jdbc statement對象
4、 設置sql語句
5、 設置sql語句中的參數(使用preparedStatement)
6、 通過statement執行sql并獲取結果
7、 對sql執行結果進行解析處理
8、 釋放資源

Mybatis封裝后:
1、我們發現假如每次我們查詢數據都要創建數據庫鏈接的話,會大大消耗我們的資源,因為建立鏈接是一個很耗時的過程,所以Mybatis有連接池來解決這個問題。
2、創建jdbc statement對象,設置sql語句 需要在訪問之前操作,若是在代碼中以硬編碼的形式來實現的話,不利于維護,所以Mybatis有mapper.xml來統一管理,比較直觀方便。
3、預編譯情況下,要把占位符的地方替換成參數傳入,Mybatis自動解析傳入的參數替換mapper.xml中設置好的占位符。
4、查詢出結果后,用JDBC把結果集映射成對象非常麻煩,所以Mybatis能用resultMap來把結果集映射成對象。

雖然看起來,Mybatis的操作與JDBC完全不一樣,但是在底層的操作確實JDBC,所以說,Mybatis是對JDBC的一次封裝,讓我們開發在對數據庫進行操作的時候更加方便。

假如你沒用過JDBC和Mybatis的話,你可能不會有所共鳴,Mybatis確實讓程序員在訪問數據庫的時候,少干了不少活,而且我們能很輕松的對sql語句進行維護。

學習源碼必備的技能

接下的篇幅,LZ會帶各位去學習一下Mybatis的源碼,需要一定的基礎,個人覺得,需要看懂的話必須要先掌握以下技能:
(1)幾個必要的設計模式
1、建造者模式。2、代理模式(重點)。3、工廠模式。4、享元模式。……
(2)會使用Mybatis(后面會穿插著介紹如何使用),最好有一定的開發經驗
(3)會使用JDBC(因為底層是JDBC,了解的話,能更好的理解Mybatis到底在干什么)

希望各位看官能在這個系列學到一點東西,理解mybatis設計的妙處。

總結

以上是生活随笔為你收集整理的Mybatis源码分析开篇的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。