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

问答专栏Q & A COLUMN

为什么阿里巴巴的持久层采用iBatis框架,而不使用hibernate框架呢?

xi4oh4oxi4oh4o 回答0 收藏2
收藏问题

8条回答

silencezwm

silencezwm

回答于2022-06-28 16:02

ibatis写sql更灵活,而大多数项目对于单表操作其实都是简单点,复杂的是查询,说明ucloud遇到的问题层次已经比较高,而不是很多人停留的crud层次,觉得hibernate很够用!

当然ucloud选择ibatis或mybatis也存在历史的局限性问题,因为当时sqltoy-orm没有诞生,否则最该选择使用的是sqltoy!

这个时代应该融合hibernate和mybatis的优点,同时更加强化查询才是正道!

为什么说mybatis(plus)还是不行(尤其是查询,crud有底,但查询诉求是上不封顶的!下面展示了一个相对简单点查询,而实际项目中sql可能要复杂的多,mybatis怎么写!写完后期怎么维护?怎么读得懂?),下面列几个小例子,展示天差地别!

评论0 赞同0
  •  加载中...
刘永祥

刘永祥

回答于2022-06-28 16:02

本人现在用mybatis,任何持久化框架都不想再学了,搞来搞去还不是得优化sql

评论0 赞同0
  •  加载中...
kevin

kevin

回答于2022-06-28 16:02

对于新手来说,ibatis比较难受,要写sql等

而hibernate对人比较友好,不用写sql,只需配置xml即可。

这个对于hibernate来说这个是优点又是缺点

优点就是对于不了解sql的人来说轻松,只需关注自己的业务代码即可,不必关心sql如何编写

缺点无法优化sql,对于复杂的系统,sql优化和编写时很重要的。

评论0 赞同0
  •  加载中...
lifefriend_007

lifefriend_007

回答于2022-06-28 16:03

hibernate已经不太适用对于动辄数百万甚至上亿数据的库,而且很多都是分库分表,多库查询,半自动的ibatis显然更具有优势。这就好比你开车喜欢自动挡还是手动挡,赛车都没有自动的。

评论0 赞同0
  •  加载中...
changfeng1050

changfeng1050

回答于2022-06-28 16:03

容易优化

评论0 赞同0
  •  加载中...
fuyi501

fuyi501

回答于2022-06-28 16:03

因为到最后还是需要优化SQL。就这句话

评论0 赞同0
  •  加载中...
时飞

时飞

回答于2022-06-28 16:03

hibernate用起来方便,但是效率相对低一些

评论0 赞同0
  •  加载中...
Enlightenment

Enlightenment

回答于2022-06-28 16:03

合适的就行,难点往往不在写法上。

评论0 赞同0
  •  加载中...

最新活动

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

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<