相同點
兩者生成Session的過程及Session的生命週期差不多
兩者都支持HDBC和JTA事務支持
不同點
Mybatis優勢和缺點
可以更加精確的定位SQL語句,進行SQL優化
映射條件靈活,可以根據不同條件組裝SQL
使用 Mapper的接口編程,只要一個接口和一個XML文件就可以創建映射器,簡化開發過程
面向SQL語句,數據庫移植性差
Hibernate優勢和缺點
完全面向對象,數據庫無關性好,O/R映射能力強
對對象的維護和緩存要比MyBatis好,對增刪改查的對象的維護要方便
數據庫移植性很好
有更好的二級緩存機制,可以使用第三方緩存。MyBatis本身提供的緩存機制不佳