01-MyBatis發展歷史及特點(面試常問跟Hibernate的區別在哪?)

在當前的互聯網項目開發中,MyBatis可以說是最常用的Java持久層框架,而Hibernate在企業內部的業務系統會更為常用。

MyBatis前身是iBATIS,其歷史發展如下:

2001年,Clinton Begin發起iBATIS開源項目

2004年,Clinton Begin將iBATS的名字和源碼捐贈給Apache軟件基金會

2010年,核心開發團隊離開Apache軟件基金會,iBATIS改名為MyBatis

那麼,MyBatis有什麼特點?大家可以跟Hibernate做下對比

1,支持自定義SQL查詢,存儲過程,高級映射等等

2,可以使用XML或註解的方式進行配置和映射

3,通過將參數映射到配置的SQL形成最終的執行語句,將執行SQL的結果映射成Java對象並返回,這個簡化了我們傳統的JDBC編程的繁瑣操作

4,MyBatis是將Java方法和SQL語句做關聯,而不是將Java對象跟數據表做關聯

5,MyBatis支持動態SQL

6,支持聲明式數據緩存,默認採用HashMap的緩存實現,當然,你可以換成其他實現,比如Ehcache,OSCache,Redis等等

目前MyBatis的開源項目已經託管在GitHub上,感興趣的可以去下載源碼來學習學習

另外,MyBatis的官網也是一個不錯的學習資源:http://www.mybatis.org/mybatis-3/

01-MyBatis發展歷史及特點(面試常問跟Hibernate的區別在哪?)


分享到:


相關文章: