日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mybatis和hibernate的区别---Mybatis的学习笔记(四)

發(fā)布時間:2023/12/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mybatis和hibernate的区别---Mybatis的学习笔记(四) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

具體說明:

Mybatis和hibernate不同,它不完全是一個ORM框架,因為MyBatis需要程序員自己編寫Sql語句,不過mybatis可以通過XML或注解方式靈活配置要運行的sql語句,并將java對象和sql語句映射生成最終執(zhí)行的sql,最后將sql執(zhí)行的結(jié)果再映射生成java對象。
Mybatis學(xué)習(xí)門檻低,簡單易學(xué),程序員直接編寫原生態(tài)sql,可嚴(yán)格控制sql執(zhí)行性能,靈活度高,非常適合對關(guān)系數(shù)據(jù)模型要求不高的軟件開發(fā),例如互聯(lián)網(wǎng)軟件、企業(yè)運營類軟件等,因為這類軟件需求變化頻繁,一但需求變化要求成果輸出迅速。但是靈活的前提是mybatis無法做到數(shù)據(jù)庫無關(guān)性,如果需要實現(xiàn)支持多種數(shù)據(jù)庫的軟件則需要自定義多套sql映射文件,工作量大。
Hibernate對象/關(guān)系映射能力強(qiáng),數(shù)據(jù)庫無關(guān)性好,對于關(guān)系模型要求高的軟件(例如需求固定的定制化軟件)如果用hibernate開發(fā)可以節(jié)省很多代碼,提高效率。但是Hibernate的學(xué)習(xí)門檻高,要精通門檻更高,而且怎么設(shè)計O/R映射,在性能和對象模型之間如何權(quán)衡,以及怎樣用好Hibernate需要具有很強(qiáng)的經(jīng)驗和能力才行。
總之,按照用戶的需求在有限的資源環(huán)境下只要能做出維護(hù)性、擴(kuò)展性良好的軟件架構(gòu)都是好架構(gòu),所以框架只有適合才是最好。

總而言之:

hibernate:是一個標(biāo)準(zhǔn)ORM框架(對象關(guān)系映射)。入門門檻較高的,不需要程序?qū)憇ql,sql語句自動生成了。對sql語句進(jìn)行優(yōu)化、修改比較困難的。
應(yīng)用場景:適用與需求變化不多的中小型項目,比如:后臺管理系統(tǒng),erp、orm、oa。。
mybatis:專注是sql本身,需要程序員自己編寫sql語句,sql修改、優(yōu)化比較方便。mybatis是一個不完全 的ORM框架,雖然程序員自己寫sql,mybatis 也可以實現(xiàn)映射(輸入映射、輸出映射)。
應(yīng)用場景:適用與需求變化較多的項目,比如:互聯(lián)網(wǎng)項目。

總結(jié)

以上是生活随笔為你收集整理的mybatis和hibernate的区别---Mybatis的学习笔记(四)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。