为什么要用Hibernate

 我来答
克祥昭我铭3
推荐于2016-07-28 · TA获得超过4017个赞
知道大有可为答主
回答量:2198
采纳率:100%
帮助的人:3318万
展开全部
对于一个项目来讲,dao设计的一个原则就是可以比较方便的替换orm的具体实现。比如我可以替换Hibernate为ibatis而不需要改变我的业务代码。
这是不是说只是在dao的实现阶段,才会考虑到Hibernate?2,在我学过的所有框架中,Hibernate是比较难以掌握的一个。而且从论坛上提问的情况可以看出来,很多人对Hibernate的理解差不多跟我同样的水平。针对一个项目而言,如果项目组内没有Hibernate专家,还是不要使用Hibernate的为好,而成为Hibernate方面的专家是一件非常困难的事情。是不是很多人在为了使用Hibernate而使用Hibernate?而不是针对项目组的实际情况呢?
5,我曾经在没有使用过ibatis的时候,仅仅通过看同事的代码就能使用ibatis,而且使用起来得心应手。但是我现在专门学习Hibernate超过五十个小时,我觉得我还是不能熟练的掌握Hibernate,这是为什么?(如果Hibernate这么复杂,我们可以因为他复杂而不去使用他吗?Hibernate有什么理由去说服我们为了学习他而花那么多时间?) 1.为了减少拼sql的工作,这点ibatis也可以解决。
2.可以实现二级缓存,这点ibatis里的cache不知道能做到多少,介于两种框架对数据库的要求和建模方式,cache的效果应该是hibernate强于ibatis。
3.hibernate可以跨主流数据库,这点是ibatis比不了的。
hibernate比ibatis复杂很多,数据库建模要保持多外键,少冗余才能保证对大限度利用缓存。虽然你设计成少外键多冗余的方式hibernate也能实现,但是总觉得不利于缓存。
因为hibernate的复杂,如果项目里没有一个特别了解的人,项目一定会在关键问题上堵死,所以一定要小心选用。不懂的话,不要冒险,为了项目着想。 1:dao一般式屏蔽底层数据库的差异吧
2:hibernate 不熟悉的话,建议还是不要用。如果实在想试试身手,对于一些表的关系不是很复杂的项目可以考虑下。个人比较倾向spring JdbcTemplate
1 开发快,公司看重,码奴标配。
2 可以基于领域驱动,不需要去过分关注烦人的数据库。
3 优化得当,性能不同凡响。(不得当也是不同凡响)缺点:1 学习曲线高(回头看看还真不低)
AiPPT
2024-12-03 广告
作为北京饼干科技有限公司的一员,对于市场上各类工具都有所了解。就AiPPT而言,它确实为用户提供了便捷高效的PPT制作体验。通过智能化的辅助功能,用户能够快速生成专业且富有创意的演示文稿,极大地节省了时间和精力。无论是对于个人用户还是企业团... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式