hibernate的优缺点

 我来答
joan0106
2011-09-30 · TA获得超过259个赞
知道答主
回答量:64
采纳率:0%
帮助的人:53.9万
展开全部
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
优点:
a. Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性。
b.Hibernate 的性能非常好,因为它是个轻量级框架。 映射的灵活性很出色。
c. 它支持各种关系数据库,从一对一到多对多的各种复杂关系。
缺点:
它限制您所使用的对象模型。(例如,一个持久性类不能映射到多个表)其独有的界面和可怜的市场份额也让人不安,尽管如此,Hibernate 还是以其强大的发展动力减轻了这些风险。其他的开源持久性框架也有一些,不过都没有 Hibernate 这样有市场冲击力
莱伯泰科
2024-10-28 广告
LabTech Group,即北京莱伯泰科仪器股份有限公司,是业界领先的实验室科学仪器与解决方案提供商。我们专注于分析测试仪器的研发、生产和销售,致力于为全球科研工作者、高校及企业实验室提供高性能、高稳定性的产品与服务。通过持续的技术创新与... 点击进入详情页
本回答由莱伯泰科提供
ylj817
2011-09-30 · 超过10用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:53.6万
展开全部
Hibernate是以操作对象的方式,实现对数据库的操作,减少了数据库操作的代码。还设计了很多调优策略。
而他有时基于JDBC的一种封装,所以执行效率比JDBC稍差。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
985967518
推荐于2017-09-17 · 知道合伙人教育行家
985967518
知道合伙人教育行家
采纳数:18027 获赞数:109859
14年本科毕业于河南理工大学,至今就读于河南理工大学攻读硕士学位,从事编程学习已有5年。

向TA提问 私信TA
展开全部
Hibernate的优缺点:
优点:1、程序更加面向对象;
2、提高了生产率;
3、方便移植(修改配置文件);
4、无侵入性。
缺点:
1、效率比JDBC略差;
2、不适合批量操作。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
568145421
2011-09-30 · 知道合伙人软件行家
568145421
知道合伙人软件行家
采纳数:1353 获赞数:6756

向TA提问 私信TA
展开全部
你好:
优点:
a.Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性。
b.Hibernate 的性能非常好,因为它是个轻量级框架。 映射的灵活性很出色。
c.它支持各种关系数据库,从一对一到多对多的各种复杂关系。
缺点:
它限制您所使用的对象模型。(例如,一个持久性类不能映射到多个表)其独有的界面和可怜的市场份额也让人不安,尽管如此,Hibernate 还是以其强大的发展动力减轻了这些风险。其他的开源持久性框架也有一些,不过都没有 Hibernate 这样有市场冲击力。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
KV9918
2019-01-02
知道答主
回答量:7
采纳率:0%
帮助的人:5268
展开全部
hibernate的优点 : 解决了直接用JDBC操作数据库的烦琐操作。屏蔽了各种数据库的实现细节。
缺点:
Hibernate和Mybatis它们的编码复杂度为O(n),也就是说每操作一个DB的表,就要写一次dao。
1) 编码复杂度C(n)=O(n),即会随实体的增长,编码量呈线性增长。当n较大时,会增加许多工作量。
2) 需要写很多的判断字段是否为空(null) ,是否是空字符串的语句;工作重复,乏味。
3)实体Javabean与DB表的map映射文件太多;或者,实体Javabean文件注解用得太泛滥,太多注解难以记忆,增加开发人员负担。
4) Hibernate的概念太复杂,学习成本高,更新会先查询再更新,n+1问题。
一个十分钟即可学会的ORM框架--Bee , 编码复杂度是O(1).
编码复杂度是O(1),就是说ORM框架只写一次就行了,没必要写n次。
(想想数据结构中时间复杂度,空间复杂度从O(n)提升到O(1)对性能的影响有多大)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式