mybatis原始碼閱讀記錄

2021-08-31 11:40:30 字數 1129 閱讀 4612

深入淺出mybatis 技術原理與實戰

楊開振著

#大體結構

sqlsessionfactory (defaultsqlsessionfactory)構建sqlsession

configuration xml檔案的記憶體表達

#sqlsession下的四個物件

executor 執行器,用來排程statementhandler,parameterhandler,resulthandler來執行對應的sql

statementhandler:使用資料庫的statement(preparedstatement)執行操作

parameterhandler 用於sql對引數的處理

resulthandler 對結果集resultset進行封裝返回

##executor

****** ,簡單執行器 預設的

reuse,

batch,

##******executor 核心方法 doquery

用於獲取statementhandler,並且對statementhandler進行引數初始化,然後執行具體查詢.

##statementhandler

routingstatementhandler是乙個**物件,真正的handler會有三個,分別對應三個執行器

******statementhandler preparedstatementhandler,callablestatementandler,

對常用的是handler是(preparedstatementhandler)

在 handler裡面的query方法中,會呼叫resultsethandler對結果進行包裝.

##引數處理器parameterhandler

實現類defaultparameterhandler

##結果處理器resultsethandler

實現類defaultresultsethandler

這裡會涉及到懶載入,作者沒有講

#sqlsession執行總結

可以看到statmenthandler是mybaits裡面的核心內容…

mybatis之原始碼閱讀記錄

使用mybatis已經有幾年了,之前只是在專案中配置和使用,但是沒有去追究它的內部實現的細節,後來也償試去學習原始碼,看過一些文章,但是不得入門。後來在mybatis官網的入門指引找找到了靈感,終於對mybatis的實現有了一定的理解 在mybatis的官網上介紹了我們在不依賴spring類容器的情...

MyBatis原始碼閱讀 解析MyBatis執行流程

前言 從demo分析上層流程 sqlsessionfactory sqlsessionfactory 一旦被建立就應該在應用的執行期間一直存在,沒有任何理由對它進行清除或重建。使用 sqlsessionfactory 的最佳實踐是在應用執行期間不要重複建立多次,多次重建 sqlsessionfact...

《原始碼閱讀》原始碼閱讀技巧,原始碼閱讀工具

檢視某個類的完整繼承關係 選中類的名稱,然後按f4 quick type hierarchy quick type hierarchy可以顯示出類的繼承結構,包括它的父類和子類 supertype hierarchy supertype hierarchy可以顯示出類的繼承和實現結構,包括它的父類和...