MyBatis詳細執行流程
步驟總結:
1、Resources加載全局配置檔案
2、執行個體化SqlSessionFactoryBuilder工程建構器
3、由XMLConfigBulider解析配置檔案流
4、把配置資訊存放在Configuration中
5、執行個體化SqlSessionFactory實作類DefaultSqlSessionFactory
6、由TransactionFactory建立一個Transaction事務對象
7、建立Excutor執行器
8、建立SqlSession接口實作類DefaultSqlSession
9、實作CURD若執行成功,則事務送出(注:查詢操作不用送出事務),否則因失敗而復原到第6步
10、關閉
1、Resources加載全局配置檔案
2、執行個體化SqlSessionFactoryBuilder工程建構器
3、由XMLConfigBulider解析配置檔案流
4、把配置資訊存放在Configuration中
通過 Debug 也可以看出 Configuration 中包含了許多的配置資訊
5、執行個體化SqlSessionFactory實作類DefaultSqlSessionFactory
6、由TransactionFactory建立一個Transaction事務對象
7、建立Excutor執行器
8、建立SqlSession接口實作類DefaultSqlSession
根據 Debug 測試可尋根溯源
成功找到SqlSession接口的實作類DefaultSqlSession的執行個體化代碼段
9、實作CURD若執行成功,則事務送出(注:查詢操作不用送出事務),否則因失敗而復原到第6步
當然,也可以在擷取SqlSession時配置事務自動送出,則增删改操作也不再需要送出事務
這是由于此方法是個重載方法
10、關閉
未使用自動送出事務的重載方法