mybatis和Hibernate的區別

1.什麼是Hibernate

Hibernate是關係型映射框架(ORM),程序員只要定義好實體到數據庫的映射關係,即可通過Hibernate提供的方法完成持久層的操作,不需要對sql熟練掌握,Hibernate會根據存儲邏輯,自動生成對應的sql,並調用jdbc接口加以執行

2.什麼是Mybatis

Mybatis是持久層框架,側重於實體和sql之間的映射關係,通過映射配置文件,將sql所需得參數,以及返回得結果字段映射到指定得實體

3.不同點

高級查詢
Mybatis:手動編寫sql以及resultmap
Hibernate:有良好得映射機制,無需關心sql的生成與結果映射

SQL優化
Mybatis:sql是自己手動編寫,按需查詢指定字段
Hibernate:會將表中所有的字段都查詢出來,消耗性能

擴展性方面
Mybatis:sql語句依賴所配置的數據庫,不同數據庫類型支持不好
Hibernate:與具體數據庫的關聯只要在XML中配置文件即可,所有的HQL語句與使用的數據庫無關,移植性好

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