MyBatis 建立SqlSession原始碼剖析

2022-06-12 15:03:13 字數 978 閱讀 7334

1.根據將xml配置檔案變成輸入流,並呼叫sqlsessionfactorybuilder的build方法

static

catch

(ioexception e)

}

我們來看一下build方法原始碼

在build方法裡面 呼叫了xmlconfigbuilder物件 用來解析配置檔案流

public

sqlsessionfactory build(inputstream inputstream, string environment, properties properties)

catch

(exception var14)

finally

catch

(ioexception var13)

}return

var5;

}

然後例項化sqlsessionfactory

2.將配置檔案資訊 儲存在configuration物件中

executor是執行器 是mybatis核心

tcm是事務管理器

3.建立sqlsession

建立sql語句,如果成功則返回,不成功則到事務管理器

MyBatis的Dao層注入SqlSession

於是就想把這東西整合進來,當進行dao的時候發現乙個小問題,sqlsession怎麼注入進來的問題,以前hibernate的的習慣用sessionfactory的opensession 方法,但是每個方法都要open一下,麻煩,就想能不能直接把sqlsession通過註解注入進來,有下面這三個類都實...

MyBatis的Dao層注入SqlSession

於是就想把這東西整合進來,當進行dao的時候發現乙個小問題,sqlsession怎麼注入進來的問題,以前hibernate的的習慣用sessionfactory的opensession 方法,但是每個方法都要open一下,麻煩,就想能不能直接把sqlsession通過註解注入進來,有下面這三個類都實...

MyBatis動態建立表

專案中業務需求的不同,有時候我們需要動態運算元據表 如 動態建表 操作表字段等 常見的我們會把日誌 裝置實時位置資訊等存入資料表,並且以一定時間段生成乙個表來儲存,log 201806 log 201807等。在這裡我們用mybatis實現,會用到動態sql。動態sql是mybatis的強大特性之一...