MyBatis 是支援普通 SQL 查詢,儲存過程和高階對映的優秀持久層框架。MyBatis 消除 了幾乎所有的 JDBC 程式碼和引數的手工設定以及結果集的檢索。MyBatis 使用簡單的 XML 或註解用於組態和原始對映,將介面和 Java 的 POJOs(Plain Old Java Objects,普通的 Java 物件)對映成資料庫中的記錄。
每個MyBatis應用程式主要都是使用SqlSessionFactory範例的,一個SqlSessionFactory範例可以通過SqlSessionFactoryBuilder獲得。SqlSessionFactoryBuilder可以從一個xml組態檔案或者一個預定義的組態類的範例獲得。
用xml檔案構建SqlSessionFactory範例是非常簡單的事情。推薦在這個組態中使用類路徑資源(classpath resource),但你可以使用任何Reader範例,包括用檔案路徑或file://開頭的url建立的範例。MyBatis有一個實用類----Resources,它有很多方法,可以方便地從類路徑及其它位置載入資源。
MyBatis 最強大的特性之一就是它的動態語句功能。如果您以前有使用JDBC或者類似框架的經歷,您就會明白把SQL語句條件連線在一起是多麼的痛苦,要確保不能忘記空格或者不要在columns列後面省略一個逗號等。動態語句能夠完全解決掉這些痛苦。儘管與動態SQL一起工作不是在開一個party,但是MyBatis確實能通過在任何對映SQL語句中
使用強大的動態SQL來改進這些狀況。
動態SQL元素對於任何使用過JSTL或者類似於XML之類的文字處理器的人來說,都是非常熟悉的。在上一版本中,需要了解和學習非常多的元素,但在MyBatis 3 中有了許多的改進,現在只剩下差不多二分之一的元素。MyBatis使用了基於強大的OGNL表示式來消除了大部分元素。