{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問答專欄Q & A COLUMN

為什么國內流行mybatis,國外反而多用hibernate?

付倫付倫 回答0 收藏1
問題描述:最近看了一個調查,只有中日韓在使用mybatis,其他地區大多都在用hibernate,這是什么原因導致的?mybatis和hibernate又分別適用于什么場景呢?
收藏問題

9條回答

garfileo

garfileo

回答于2022-06-28 14:13

主要是hibernate提倡以面向對象的方式操作數據庫,SQL都是自動生成的,有些復雜的查詢orm生成的SQL不會命中索引,導致查詢性能不高。一切起源于杰克馬提出的去ioe運動,根本原因是沒錢就瘋狂壓榨程序員。

評論0 贊同0
  •  加載中...
whlong

whlong

回答于2022-06-28 14:13

1.國內基本都學過SQL,而且寫SQL很方便。

2.國內大多數是“面向數據庫編程”

3.JPA的表連接太難懂,國內對于ORM的思想還是停留在JDBC

4.Mybatis更易于維護,面對不穩定的國內環境更適合

評論0 贊同0
  •  加載中...
qujian

qujian

回答于2022-06-28 14:13

1.hibernate對sql做了一層封裝轉換變成了hql,sql對程序員來說是最直觀的,hql又包了一層,感覺別扭。

2.都要生成一通xml,hibernate沒優勢啊,mybatis一些插件單表不用xml了,維護方便啊。

3.國內項目業務復雜,mybatis更具有靈活性。插件豐富tk.mybatis、mybatis-plus大大降低了開發成本。

4.MyBatis可以進行更為細致的SQL優化,可以減少查詢字段。

5.MyBatis容易掌握,而Hibernate門檻較高。

6.緩存問題(這一點我說得不一定對),話說hibernate比mybatis更好使用,需要注意得地方少。但是,但是,但是啊我覺得這只是對單機項目吧,目前多節點項目都用redis作為緩存啊,這就使的架構師選擇mybatis時更加沒什么猶豫了。

7.國內開源項目基本都是集成得mybatis,氛圍就是這樣。用hibernate的都是一些老項目,公司內部的不開源的,基本的架構設計和目前的潮流格格不入了。國內的培訓機構基本都時ssm流。

8.MyBatis相對于hibernate的缺點漸漸被彌補是關鍵,MyBatis的代碼生成器拓展起來真的很方便。

9.MyBatis的批量保存使用要注意

評論0 贊同0
  •  加載中...
lakeside

lakeside

回答于2022-06-28 14:13

面向數據庫編程,用MyBatis。

面向對象編程,用Hibernate。

評論0 贊同0
  •  加載中...
mindwind

mindwind

回答于2022-06-28 14:13

當你理解了jpa規范那一套以后 就真的不想用mybatis了 特別是項目中使用ffffd

評論0 贊同0
  •  加載中...
bergwhite

bergwhite

回答于2022-06-28 14:13

國內有段時間也流行過hibernate,但大多到后期,覺的不好優化。還是覺的mybatis可控,符合國情唄,但為了對付mybatis這個半成品,業界也推出了不少增強框架:mybatis plus, tk mybatis, mybatis enhance。 這些產品有不少優點,但也都沒有辦法徹底解決問題。

最近有個新興起的增強框架, fluent mybatis,吸收很多框架的優點,既有jpa的方便,又保持了可以自己編寫sql的原始掌控能力。

同時有很多增強的特性:分頁處理,租房處理,嵌套查詢,聯表查詢,多數據庫兼容處理,fluent語法。

https://gitee.com/fluent-mybatis/fluent-mybatis

https://mp.weixin.qq.com/s/jlcWt_1zbksDgncVr64nqA


評論0 贊同0
  •  加載中...
hizengzeng

hizengzeng

回答于2022-06-28 14:13

國內人多,用戶量大,必須要mybatis來優化sql。國外大部分網站人不多,hibernate更效率,國外的大型網站依然是mybatis,不過嘛大型畢竟只有那幾家,所以國外hibernate是主流。

評論0 贊同0
  •  加載中...
aisuhua

aisuhua

回答于2022-06-28 14:13

因為中國人多,數據量大,業務變化快,設計人員水平問題,時間緊,這些層層疊加起來就讓頭部程序員選擇更靈活的mybatis,然后他們寫出各種文檔,后輩們自然跟風,難道我放著中文不看去看英文資料?

評論0 贊同0
  •  加載中...
宋華

宋華

回答于2022-06-28 14:13

1:持久層只是個工具,不要太在意。

2:中西方思考方式還是有比較大的差已的,不要以自己當前的環境考慮別人的選擇

3:如果是數據庫編程為主的團隊,mybatis還是不錯的,畢竟這種團隊選擇它,不是自己決定的,而是市場環境之必然

評論0 贊同0
  •  加載中...

最新活動

您已邀請0人回答 查看邀請

我的邀請列表

  • 擅長該話題
  • 回答過該話題
  • 我關注的人
向幫助了您的網友說句感謝的話吧!
付費偷看金額在0.1-10元之間
<