1. 程式人生 > >MyBatis介紹以及工作流程

MyBatis介紹以及工作流程

一、Mybatis介紹

MyBatis是一款一流的支援自定義SQL、儲存過程和高階對映的持久化框架。MyBatis幾乎消除了所有的JDBC程式碼,也基本不需要手工去 設定引數和獲取檢索結果。MyBatis能夠使用簡單的XML格式或者註解進行來配置,能夠對映基本資料元素、Map介面和POJOs(普通java對 象)到資料庫中的記錄。

二、MyBatis工作流程

(1)載入配置並初始化

觸發條件:載入配置檔案

配置來源於兩個地方,一處是配置檔案,一處是Java程式碼的註解,將SQL的配置資訊載入成為一個個MappedStatement物件(包括了傳入引數對映配置、執行的SQL語句、結果對映配置),儲存在記憶體中。

(2)接收呼叫請求

觸發條件:呼叫Mybatis提供的API

傳入引數:為SQL的ID和傳入引數物件

處理過程:將請求傳遞給下層的請求處理層進行處理。

(3)處理操作請求 觸發條件:API介面層傳遞請求過來

傳入引數:為SQL的ID和傳入引數物件

處理過程:

(A)根據SQL的ID查詢對應的MappedStatement物件。

(B)根據傳入引數物件解析MappedStatement物件,得到最終要執行的SQL和執行傳入引數。

(C)獲取資料庫連線,根據得到的最終SQL語句和執行傳入引數到資料庫執行,並得到執行結果。

(D)根據MappedStatement物件中的結果對映配置對得到的執行結果進行轉換處理,並得到最終的處理結果。

(E)釋放連線資源。

(4)返回處理結果將最終的處理結果返回。

orm工具的基本思想

無論是用過的hibernate,mybatis,你都可以法相他們有一個共同點:

從配置檔案(通常是XML配置檔案中)得到 sessionfactory.

由sessionfactory  產生 session

在session 中完成對資料的增刪改查和事務提交等.

在用完之後關閉session 。

在java 物件和 資料庫之間有做mapping 的配置檔案,也通常是xml 檔案