SqlSession執行總結

2021-08-14 20:43:26 字數 416 閱讀 1855

sqlsession是通過執行器executor排程statementhandler來執行的。而statementhandler經過3步:

1、prepared預編譯sql

2、parameterize設定引數

3、query/update執行sql

其中,parameterize是呼叫parameterhandler的方法設定的,而引數是根據型別處理器typehandler處理的。query/update方法通過resultsethandler進行處理結果的封裝,如果是update語句,就返回整數,否則就通過typehandler處理結果型別,然後用objectfactory提供的規則組裝物件,返回給呼叫者。

SqlSession執行流程

一 產生 mybatis解析完配置檔案後,會生成乙個defaultsqlsessionfactory物件,呼叫opensession方法,即可獲得乙個sqlsession 使用的是預設的defaultsqlsession物件 二 原始碼解讀 獲取到環境物件 獲取到事務工廠 例項化事務物件 建立執行器...

mybatis之獲取SqlSession物件

在opensession 處加上斷點並執行 defaultsqlsessionfactory類的opensession 方法 override public sqlsession opensession 進入opensessionfromdatasource,裡面包含資料來源和事務以及建立了四大物件...

MyBatis 建立SqlSession原始碼剖析

1.根據將xml配置檔案變成輸入流,並呼叫sqlsessionfactorybuilder的build方法 static catch ioexception e 我們來看一下build方法原始碼 在build方法裡面 呼叫了xmlconfigbuilder物件 用來解析配置檔案流 public sq...