1. 程式人生 > >Mybatis的工作流程

Mybatis的工作流程

MyBatis工作流程
1:載入配置檔案(mybatis-config.xml 、 *...Mapper.xml)並初始化,
將SQL的配置資訊載入成為一個個MappedStatement物件(包括了傳
入引數對映配置、執行的SQL語句、結果對映配置),儲存在記憶體中。
2:接收呼叫請求(呼叫Mybatis提供的API即增刪改查的方法)並傳入引數:
即SQL的ID和傳入引數物件
3:處理操作請求,過程:
(1)根據SQL的ID查詢對應的MappedStatement物件。
(2)根據傳入引數物件解析MappedStatement物件,得到最終要執行的SQL和執行傳入引數。
(3)獲取資料庫連線,根據得到的最終SQL語句和執行傳入引數,到資料庫執行,並得到執行結果。
(4)根據MappedStatement物件中的結果對映配置對得到的執行結果進行轉換處理,並得到最終的處理結果。
(5)釋放連線資源。
4:返回處理結果將最終的處理結果返回。

 

MyBatis優點
1:半自動化的ORM實現(實體類和SQL語句之間建立對映關係)
2:SQL程式碼從程式程式碼中徹底分離,可重用
3:與JDBC相比,減少了50%以上的程式碼量
4:小巧靈活、簡單易學,是最簡單的持久化框架
5:提供XML標籤,支援編寫動態SQL
6:提供對映標籤,支援物件與資料庫的ORM欄位對映

 

MyBatis缺點
1:SQL語句編寫工作量大,對開發人員有一定sql技術要求
2:資料庫移植性差(不同資料庫,sql語句語法有所不同)