3. MyBatis與hibernate有哪些不同 ?

2018-11-24 17:20 更新

問題: MyBatis與hibernate有哪些不同 ? 1)Mybatis MyBatis 是支持定制化 SQL、存儲過程以及高級映射的一種持久層框架。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設(shè)置參數(shù)以及獲取結(jié)果集。Mybatis它不完全是一個ORM(對象關(guān)系映射)框架;它需要程序員自己編寫部分SQL語句。 mybatis可以通過xml或者注解的方式靈活的配置要運行的SQL語句,并將java對象和SQL語句映射生成最終的執(zhí)行的SQL,最后將SQL執(zhí)行的結(jié)果在映射生成java對象。 Mybatis程序員可以直接的編寫原生態(tài)的SQL語句,可以控制SQL執(zhí)行性能,靈活度高,適合軟件需求變換頻繁的企業(yè)。 缺點:Mybatis無法做到數(shù)據(jù)庫無關(guān)性,如果需要實現(xiàn)支持多種數(shù)據(jù)庫的軟件,則需要自定義多套SQL映射文件,工作量大。 2) Hibernate Hibernate是支持定制化 SQL、存儲過程以及高級映射的一種持久層框架。 Hibernate對象-關(guān)系映射能力強,數(shù)據(jù)庫的無關(guān)性好,Hirberate可以自動生成SQL語句,對于關(guān)系模型要求高的軟件,如果用HIrbernate開發(fā)可以節(jié)省很多時間。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號