詳談Mybatis和Hibernate 的區別

  1. Mybatis是一個不完全的ORM(對象關係映射)框架,因爲它需要程序員自己編寫sql語句,而Hibernate是一個完全的ORM框架。

  2. Mybatis學習門檻低,簡單易學,而Hibernate較爲複雜,不易精通。

  3. Mybatis可以直接編寫原生態的sql,可以嚴格控制sql執行性能,進行更細緻的sql優化,靈活度高,非常適合對關係型數據模型不高的軟件開發,例如互聯網軟件,企業運營類軟件,而Hibernate不能編寫sql語句,靈活度不高,但對於關係模型要求高的軟件,可以節省很多代碼的開發,提高開發效率。

  4. Mybatis本身的緩存機制不佳,而Hibernate有更好的一級緩存和二級緩存,而且還可以使用第三方插件,利於Hibernate使用的就是Ehcache.

  5. Mybatis移植性不好,有自己編寫的sql語句 ,當面對不同類型的數據庫時需要修改sql語句,而Hibernate的hql數據庫,移植性好,因爲它裏面沒有sql語句。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章