为什么要使用Hibernate。

谢谢笑笑妹x浄
2013-10-13 · TA获得超过3189个赞
知道小有建树答主
回答量:966
采纳率:0%
帮助的人:649万
展开全部
对于一个项目来讲,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-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲、导入文档内容”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式