Mybatis與Hibernate的對比

來源:互聯網
上載者:User

標籤:

 Mybatis與Hibernate的對比

工作中,用了一段Hibernate與Mybatis,也在此簡單的聊上幾句,希望對大家有協助。

    Mybatis與Hibernate不同,它不完全是一個ORM架構,因為Mybatis需要程式員自己編寫sql語句。mybatis可通過XML或註解方式靈活配置啟動並執行sql,並將java對象和sql語句映射產生最終執行的sql,最後將sql執行的結果再映射產生java對象。

     mybatis學習門檻低,簡單易學,程式員直接編寫原生態sql,可嚴格控制sql執行效能,靈活度高,非常適合對關係資料模型要求不高的軟體開發,例如互連網軟體、企業運營類軟體等,因為這些軟體需求變化頻繁,一但需求變化,要求成果輸出迅速。但是靈活的前提是mybatis無法做到資料庫無關性,如果需要實現支援多種資料庫的軟體則需要自訂多套sql對應檔,工作量大。

     Hibernate對象/關係映射能力強,資料庫無關性好,對於關聯式模式要求高的軟體(例如需求固定的定製軟體)如果用Hibernate開發可以節省很多代碼,提高效率。但是Hibernate的學習門檻高,要精通Hibernate門檻更高,而且怎麼設計O/R映射,在效能和物件模型之間如何權衡,以及怎麼樣用好Hibernate需要具有很強的經驗和能力才行。

     其實,總的來說,按照使用者的需求在有限的資源環境下只要能做出維護性,擴充性良好的軟體架構都是好架構,所以架構只有適合的才是最好的。

       

Mybatis與Hibernate的對比

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.